Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Não foi possível carregar o arquivo ou assembly 'Erro System.Data ao implantar o aplicativo no banco de dados de produção


A razão pela qual a exceção é lançada assim que você insere o método é simples - o compilador JIT só precisa resolver as referências então. MySqlConnection requer System.Data e é o primeiro método a fazer isso, então é quando a exceção é lançada.

Quanto à depuração do problema, parece que o .NET framework foi instalado incorretamente na máquina de destino. Você deve tentar Como habilitar o log de falhas de associação de montagem (Fusion) em .NET para dar uma olhada em onde o .NET está realmente tentando encontrar a biblioteca e por que ele descarta qualquer coisa que encontrar.

Se isso não levar você a resolver seu problema, eu tentaria desinstalar e reinstalar o .NET framework 2.0 e depois o 3.5.

O motivo pelo qual Copy Local funciona é porque o aplicativo não tenta carregar a DLL do Global Assembly Cache, mas sim do diretório executável do seu aplicativo. No entanto, seu verdadeiro problema é que não está encontrando a DLL certa no GAC.

Se o Fusion mostrar que a biblioteca MySQL tenta carregar uma versão errada do System.Data, você pode usar um manifesto do aplicativo para forçá-lo a carregar uma versão diferente (que deve ser compatível). Você pode ler sobre manifestos de aplicativos aqui - http:// msdn.microsoft.com/en-us/library/aa374191(VS.85).aspx

Boa sorte.