我使用C#
创建了具有mysql
数据库的桌面应用程序。
我已安装mysql connector
以便连接到mysql DB
。
当我给出项目总监的绝对路径时,我可以成功运行该应用程序。
但是,当我从.exe
文件夹复制bin/release
文件时,应用程序无效。
它在当前文件夹中需要MySql.Data.dll
,然后才有效,我们如何删除这种依赖?
我检查了参考中的其他属性,例如 Copy Local = true 。
仍然没有用。
答案 0 :(得分:0)
您可能可能在GAC中安装DLL,但我个人不会 - 如果不需要任何GAC条目,部署应用程序会更简单。 .NET应用程序要求它使用的第三方库与可执行文件共存是完全正常的。您依赖于该DLL,因此必须某处。要么必须是中心位置(GAC),要么是exe文件旁边。
我建议你只需将DLL和可执行文件一起复制到你需要的地方。
另一个选项是将程序集与ilmerge合并,但除非你确实需要,否则我建议不要使用它。 (我没有反对ilmerge,但我不喜欢从最简单的部署模型中采取任何措施,除非我必须。)