我的 C # WinForms 解决方案有两个项目。 一个 DLL,这是我正在工作的主要项目,和一个可执行的 WinForms 我称为“沙箱”,这样我就可以编译/运行/调试的 DLL 容易一去。
两个项目我都在.Net 4.0上工作。
一切正常,直到我添加了一些看似无关紧要的代码,以及 DLL 中对 System.Web 的引用。 现在,我的 Sandbox 项目无法看到 DLL 项目的命名空间。我没有改变任何我认为会影响到这个的东西。
如果我从 Sandbox 引用中删除对 DLL 的项目引用并重新添加它,那么红色下划线全部消失,所有类的颜色编码返回等等; 但是一旦我尝试构建解决方案,整个事情就会再次崩溃。
当我在 Sandbox 的引用中右键单击 DLL 项目并在对象浏览器中查看时,我可以看到名称空间和其中的所有内容。
我有种感觉,这可能是某种窃听器?
这是某种 VS2010漏洞吗?几个月前我也遇到过同样的问题,当时我只能通过制作一个全新的项目并重新导入我的文件来解决这个问题。然而,这一次,我有大量的文件,只有在万不得已的情况下才会这样做!
编辑: 在惊慌失措地检查并撤销我所有的修改之后,试图找出问题的原因,似乎是这句话:
string url = "http://maps.google.com?q=" + HttpUtility.UrlEncode(address);
如果我注释掉这一行,那么就不会出现名称空间错误,并且项目构建良好。不过我看不出这条线有什么问题。