PROBLEMAS MYSQL.DATA.CLIENT ...

XXXANGELSXXX 15/07/2022 11:46:05
#500221
Senhores bom dia, blza? aqui, uma pergunta um tanto que simplista, mas que está me causando uma certa desorientaçao... eu trabalho com Mysql.Data.Client na versao 8.5 por exemplo em um projeto DLL. no meu EXE ele utuiliza a Mysql.Data com versao 6.99, entao.. ambos os projetos ou seja.. a DLL e o EXE necessitam de Acessar informacoes do banco de dados, entao por isso necessita do mysql.data instalando em suas respectivas soluçoes.. o problema é que .. do EXE se eu chamo uma funcao que tem na dll ele fica me dando a mensagem de erro: System.IO.FileLoadException: "Não foi possível carregar arquivo ou assembly "MySql.Data, Version=8.0.29.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" ou uma de suas dependencias, se eu atualizar o EXE com essa mesma referencia vai funcionar, mas a duvida é a seguinte, eu preciso de fato ter o mysql.data exato referenciado no exe? se eu tou trabalhando com a dll.. a responsabilidade de fazer as coisas la pra dentro.. é dela.. ou nao ??? se eu chamo a mesma funcao por exemplo no VB6, nao me causa o problema obviamente..

Desde ja agradeço a atençao..
KERPLUNK 15/07/2022 18:19:05
#500222
Se voce tem a mesma coisa referenciada em dois projetos, voce já tem, por definição, um problema estrutural. Do seu EXE, voce chama a DLL, nela tem a referencia à dados. Da DLL, voce passa os dados para o EXE em forma de objeto customizado(veja sobre ORM"s) e aí trabalha com esses objetos.
SAMUKA 16/07/2022 14:12:49
#500224
Resposta escolhida
XXXANGELSXXX, Mysql.Data é um pacote de terceiros. E voce escolhe com qual versão quer trabalhar. Como voce tem 2 projetos usando versões diferentes, quando for levar para o cliente, também terá que ter ambos pacotes incluídos na instalação. Não dá pra levar apenas a DLL, sendo que ela faz referencia a um pacote que não é parte do framework.Net
Tópico encerrado , respostas não são mais permitidas