VS2010无法找到当前上下文,但引用已构建。

3

我正在使用Visual Studio 2010构建一个应用程序,必须使用外部dll。在编码时,IDE没有显示任何关于我添加到项目中的dll拥有的方法的错误。我甚至可以浏览类对象层次结构。一旦我尝试编译我的项目,这个引用就丢失了。我无法再浏览引用,并收到常见的错误“在当前上下文中不存在”。

我甚至重新编译了dll,但仍然遇到这个错误。


参考是否启用了“复制本地”?它是否存在于全局程序集缓存中? - henginy
4个回答

10

在项目属性中,点击“应用程序”选项卡。检查并查看“目标框架”的设置。我之前遇到了类似的问题,原因是“目标框架”设置为“.NET Framework 4 Client Profile”,而不是“.NET Framework 4”。

编辑

我不确定为什么这种方法可以解决我的缺失引用问题,但它确实有效。我是按照另一个 Stack Overflow 链接的建议操作的,如果我能够再次找到该链接,我将添加它。


谢谢您,先生。这就是问题所在。 - dierre
不客气!我很高兴能帮到你。希望我能找到那个其他的问题。如果我没记错的话,那里有一个很好的解释,说明为什么可以解决“缺少引用”的问题。 - Zajn
面临相同的问题...将目标框架从4.5更改为4.0,问题得到解决..感谢答案。 - Sarath Rachuri

0

如果您的DLL项目针对的是与使用此DLL的项目不同的.NET Framework版本,则会出现此错误。

因此,请确保您的引用项目(DLL提供者)正在使用与其他项目(DLL使用者)相同的.NET Framework版本

这样做可以避免出现错误。


0

尝试检查Visual Studio是否正确设置了dll的路径:

右键单击dll并转到属性。然后在属性窗口中,您有一行指定dll的物理路径。

我有时会遇到这个问题,即此行为空,因此dll带有黄色问号标记。

如果该行为空,则填写正确的dll路径可能会解决您的问题。

希望能帮到您,祝好!


0
可能是你的项目所针对的平台和 dll 的平台不匹配造成的问题。尝试明确指定 x86 或 64 位,看看会发生什么。如果可以工作,那么请检查你是否满意该平台,或者你是否需要寻找另一个编译为其他平台的 dll,或者你是否需要寻找另一个库。

希望能有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接