Nosso

Blog

YourCode Soluções Web e Mobile
Resolvido: Upgrade framework 4.8 e MySQL 8.3.0.0

17/04/2024

Resolvido: Upgrade framework 4.8 e MySQL 8.3.0.0

Nesse artigo vou ensinar a fazer upgrade do framework 4.5 para o 4.8.

Primeiro nas configurações do projeto altere o framework para o 4.8 conforme imagem abaixo:

Após a atualização, é preciso instalar via nuget as referências do MySQL 8.4.0.0 conforme imagem abaixo:

Ou rodar os comandos abaixo no package manager console:


Install-Package MySql.Data -version 8.4.0.0
Install-Package MySql.Data.EntityFramework -version 8.4.0.0
Install-Package MySql.Web -version 8.4.0.0

Caso já tenha instalado as referências, faça update com os comandos abaixo:

Update-Package MySql.Data -version 8.4.0.0
Update-Package MySql.Data.EntityFramework -version 8.4.0.0
Update-Package MySql.Web -version 8.4.0.0

Ao concluir os passos anteriores, é necessário fazer umas alterações no Web.config do projeto.

1º) Adicionar/substituir o assembly do mysql.data:

<dependentAssembly>
   <assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
   <bindingRedirect oldVersion="0.0.0.0-8.4.0.0" newVersion="8.4.0.0" />
</dependentAssembly>

 

2º) Adicionar/substituir a tag do entityframework:

<entityFramework>
   <defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
      <providers>
         <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version=8.4.0.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d">
      </provider>
   </providers>
</entityFramework>

 

3º) Adicionar/substituir a tag system.data:

<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=8.4.0.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    </DbProviderFactories>
</system.data>

OBS: Não temo certeza (não conseguimos!) mas campos do tipo tinyblob não funciona no mysql 8. Em alguns projetos tivemos vários problemas com ele e resolvemos trocar.

Espero que possa ajudar alguém pois eu sofri bastante para chegar nessa configuração! 

Forte abraço!!

Por Carlos Eduardo Sonego


Gostou do Post? Compartilhe agora mesmo.

Comentários

WhatsApp YourCode