CONEXAO MYSQL

DAMASCENO.CESAR 02/02/2017 11:56:27
#471262
Bom dia pessoal,
Estou seguindo um tutorial que mostra como usar MySql com ADO.net Entity Framework mas na hora de realizar a conexao com o ADO .NET Entity Data Model ao tentar criar nova conexão com o MySql só me aparece opções de conectar com o SQL Server.
Já instalei o conector MySql 6.9.2 pelo NuGet, já referenciei pela janela ADD Reference e nada!
Se puderem me dizer como resolver isso.
OBS Visual Studio 2010 e o tutorial é com o VS 2010 também
DS2T 02/02/2017 12:20:06
#471268
Opa Damasceno, beleza?

Já tentou indicar o provedor no Web.Config?

Abraços!
XLEGENDARY 02/02/2017 12:22:51
#471269
por acaso vc ja adicionou a conexão ao DSN do windows?

Painel de Controle > Ferramentas Administrativas > Fonte de Dados ODBC> Adicionar > Mysql ODBC Driver
DAMASCENO.CESAR 02/02/2017 13:32:33
#471273
DS2T, indiquei no web.config, ficou assim:

  <?xml version=[Ô]1.0[Ô] encoding=[Ô]utf-8[Ô]?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<configSections>

<section name=[Ô]entityFramework[Ô] type=[Ô]System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089[Ô] requirePermission=[Ô]false[Ô] />
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --></configSections>
<connectionStrings>
<add name=[Ô]ApplicationServices[Ô] connectionString=[Ô]data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true[Ô] providerName=[Ô]System.Data.SqlClient[Ô] />
</connectionStrings>


<system.web>
<compilation debug=[Ô]true[Ô] targetFramework=[Ô]4.0[Ô] />
<authentication mode=[Ô]Forms[Ô]>
<forms loginUrl=[Ô]~/Account/Login.aspx[Ô] timeout=[Ô]2880[Ô] />
</authentication>
<membership>
<providers>
<clear />
<add name=[Ô]AspNetSqlMembershipProvider[Ô] type=[Ô]System.Web.Security.SqlMembershipProvider[Ô] connectionStringName=[Ô]ApplicationServices[Ô] enablePasswordRetrieval=[Ô]false[Ô] enablePasswordReset=[Ô]true[Ô] requiresQuestionAndAnswer=[Ô]false[Ô] requiresUniqueEmail=[Ô]false[Ô] maxInvalidPasswordAttempts=[Ô]5[Ô] minRequiredPasswordLength=[Ô]6[Ô] minRequiredNonalphanumericCharacters=[Ô]0[Ô] passwordAttemptWindow=[Ô]10[Ô] applicationName=[Ô]/[Ô] />
</providers>
</membership>
<profile>
<providers>
<clear />
<add name=[Ô]AspNetSqlProfileProvider[Ô] type=[Ô]System.Web.Profile.SqlProfileProvider[Ô] connectionStringName=[Ô]ApplicationServices[Ô] applicationName=[Ô]/[Ô] />
</providers>
</profile>
<roleManager enabled=[Ô]false[Ô]>
<providers>
<clear />
<add name=[Ô]AspNetSqlRoleProvider[Ô] type=[Ô]System.Web.Security.SqlRoleProvider[Ô] connectionStringName=[Ô]ApplicationServices[Ô] applicationName=[Ô]/[Ô] />
<add name=[Ô]AspNetWindowsTokenRoleProvider[Ô] type=[Ô]System.Web.Security.WindowsTokenRoleProvider[Ô] applicationName=[Ô]/[Ô] />
</providers>
</roleManager>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests=[Ô]true[Ô] />
</system.webServer>

<entityFramework>
<defaultConnectionFactory type=[Ô]MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6[Ô] />
<providers>
<provider invariantName=[Ô]MySql.Data.MySqlClient[Ô] type=[Ô]MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6[Ô] />
</providers>
</entityFramework>
<runtime>
<assemblyBinding xmlns=[Ô]urn:schemas-microsoft-com:asm.v1[Ô]>
<dependentAssembly>
<assemblyIdentity name=[Ô]MySql.Data[Ô] publicKeyToken=[Ô]c5687fc88969c44d[Ô] culture=[Ô]neutral[Ô] />
<bindingRedirect oldVersion=[Ô]0.0.0.0-6.8.8.0[Ô] newVersion=[Ô]6.9.2.0[Ô] />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.data>
<DbProviderFactories>
<remove invariant=[Ô]MySql.Data.MySqlClient[Ô] />
<add name=[Ô]MySQL Data Provider[Ô] invariant=[Ô]MySql.Data.MySqlClient[Ô] description=[Ô].Net Framework Data Provider for MySQL[Ô] type=[Ô]MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.8.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d[Ô] />
</DbProviderFactories>
</system.data></configuration>
DAMASCENO.CESAR 02/02/2017 13:40:00
#471275
DS2T
Mas como é uma aplicação 3 camadas, sendo um projeto web e dois projetos C#, (DAL e BLL) o tutorial pede para inserir o ADO .NET Entity Data Model na DAL, então olhei o app.config, que ficou assim:

  <?xml version=[Ô]1.0[Ô] encoding=[Ô]utf-8[Ô]?>
<configuration>
<configSections>

<section name=[Ô]entityFramework[Ô] type=[Ô]System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089[Ô] requirePermission=[Ô]false[Ô] />
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --></configSections>

<entityFramework>
<defaultConnectionFactory type=[Ô]System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework[Ô] />
<providers>
<provider invariantName=[Ô]System.Data.SqlClient[Ô] type=[Ô]System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer[Ô] />
</providers>
</entityFramework>
<runtime>
<assemblyBinding xmlns=[Ô]urn:schemas-microsoft-com:asm.v1[Ô]>
<dependentAssembly>
<assemblyIdentity name=[Ô]MySql.Data[Ô] publicKeyToken=[Ô]c5687fc88969c44d[Ô] culture=[Ô]neutral[Ô] />
<bindingRedirect oldVersion=[Ô]0.0.0.0-6.9.2.0[Ô] newVersion=[Ô]6.9.2.0[Ô] />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.data>
<DbProviderFactories>
<remove invariant=[Ô]MySql.Data.MySqlClient[Ô] />
<add name=[Ô]MySQL Data Provider[Ô] invariant=[Ô]MySql.Data.MySqlClient[Ô] description=[Ô].Net Framework Data Provider for MySQL[Ô] type=[Ô]MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d[Ô] />
</DbProviderFactories>
</system.data></configuration>


e em nenhum dos dois casos hove solução.

XLEGENDARY,
quanto a colocar a conexao ODBC, fiz como sugerido, mas não resultou em nada quanto ao problema:

NICKOSOFT 02/02/2017 14:06:10
#471277
Resposta escolhida
passo a passo https://www.codeproject.com/Tips/426790/Using-MySQL-with-Entity-Framework
DAMASCENO.CESAR 02/02/2017 17:45:45
#471284
NICKSOFT, ainda não deu pra testar tudo, amanhã posto o resultado
NICKOSOFT 02/02/2017 20:08:49
#471293
ainda tem mais, se o mysql não aparece no datasource na hora de procurar a fonte, é mais fácil, basta baixar e instalar
https://dev.mysql.com/downloads/windows/visualstudio/
DAMASCENO.CESAR 03/02/2017 15:44:53
#471327
Depois de muita luta (entenda-se burrice rsrsrs) consegui fazer aparecer a conexão MySql, criar o ADO .NET Entity Data Model mas ainda está dando erro.
não está gerando os modelos como mostra no tutorial
segue mensagem de erro:
Unable to generate the model because of the following exception: [ô]The value for column [ô]IsPrimaryKey[ô] in table [ô]TableDetails[ô] is DBNull. Specified cast is not valid.

Ví alguma coisa no google sobre versão do MySql e outra falando para alterar o campo INT(11) somente para INT ou BigInt, mas não foi possível.
Altero para INT mas volta para INT(11) e o BigInt pede valor

será mesmo problema de versão do MySql?
MySql Server 5.7
MySql Connector 6.9.2
MySql para Visual Studio 1.2.6
NICKOSOFT 05/02/2017 19:28:49
#471392
chave primaria deixo como int e auto incremente ativo
DAMASCENO.CESAR 05/02/2017 22:47:52
#471396
NICKOSOFT, deixei o ID int, com chave primária e auto incremente ativo. estou usando o Heidi Sql para criar as tabelas e ele coloca o tamanho do campo ID int(11). Não consegui mudar isso, tentei pelo WorkBench e dá o mesmo resultado, tamanho (11).
Página 1 de 2 [12 registro(s)]
Tópico encerrado , respostas não são mais permitidas