我有这个c#项目...我将这个引用(一个dll)添加到它,并尝试在我的代码中使用该库。
我使用它所谓的(它是一个数据库连接器)
MiDB myDb;
它没有找到,我可以右键单击并说“解决”使用...将此行添加到顶部:
using ThePackage.Database.AoNM.MiDB;
所以这是有效的,它看到了,我甚至可以调用一个看到的方法:
myDb.InitDB("stuff here");
宾果。在我构建它的那一刻,它说它找不到ThePackage
,它就像使用或引用不存在一样。在解决方案资源管理器中它仍然存在?我可以删除引用并再次添加它,然后同样的事情发生,它“似乎”就像它在那里,但是要构建并运行它“消失”。
这可能是因为它迟到了,但老实说我完全迷失了为什么C#(2008)对我这样做了?
DLL建于2008年......也许我错过了一些带有dll的构建选项?
答案 0 :(得分:3)
检查dll和程序集是否在相同的CPU类型(x86-x64)上运行。我曾经有过类似的错误(以及非常奇怪的错误信息),当它们不同时。
答案 1 :(得分:3)
我有同样的问题。 您需要将项目的目标框架从“.Net Framework 4 Client Profile”更改为“.Net Framework 4”
它对我有用。
答案 2 :(得分:1)
如果dll使用比应用程序更高的.net框架版本,你会看到这个。这可能不太可能我阅读你在评论中所说的内容,因为该应用程序是在visual studio 2010中,而dll是使用visual studio 2008构建的。但是,并不完全确定是这样的,因为问题引用了visual studio 2008.无论如何,检查引用项目中是否使用与引用项目相同的框架版本或更高版本。