神秘的引用消失问题

3
我有一个关于Windows窗体应用程序的非常奇怪的问题。我是一名Web开发人员,对于开发Windows窗体应用程序经验有限。我正在开发一个电子商务网站,该网站将产品图像存储为二进制大对象(BLOB)格式。为了更容易地批量导入图像,我正在编写一个小型的Windows窗体实用程序,该实用程序使用现有的网站业务逻辑库。我使用Visual Studio 2010 C#和.NET 4创建了一个新的Windows窗体项目,并在我的解决方案中添加了对bll项目的引用。我开始编码并向我的代码添加using语句,一切都按预期工作,Intelisense可以正确地使用我的bll类等等。然后我构建项目,它失败了,它抱怨了每一行引用bll项目的代码,包括using语句,而且Intelisense不再适用于bll项目中的任何内容。基本上,如果没有引用bll项目,你会得到这样的结果。如果我删除引用,然后重新添加它,或者在解决方案中添加对另一个项目的引用,Intelisense会回来,所有编译器错误都会消失。然后,如果我再次构建,它们就会重新出现,Intelisense也不再适用。我错过了什么?这到底是怎么回事?
2个回答

3

你的库可能依赖于其他.NET库,比如System.Web,你需要在窗体应用程序中引用它们。这可能会导致出现这种行为。


太棒了,就是这样。如此简单,但却令人困惑,因为没有任何指向那个方向的错误信息。 - Ben Robinson

0

我最近遇到了一个类似的问题,并想包括我的解决方案以备将来参考,以防再次发生。当构建失败时,会弹出一个警告(而不是错误)消息,由于我将错误列表设置为过滤掉警告,因此一开始没有注意到。在我特定的情况下,我需要改用.NET的客户端版本,而警告消息包含了我需要调试问题的信息。

警告44 引用的程序集[…]无法解析,因为它依赖于[...],而当前的目标框架中没有[...]。请删除对未在目标框架中的程序集的引用,或考虑重新定位您的项目。[...]"


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