Visual Studio 2010 命名空间可见性难题
在 Visual Studio 2010 中,出现了一个令人费解的问题:DLL 项目中的命名空间突然变得不可见引用可执行项目(沙箱)。将 System.Web 和看似良性的代码添加到 DLL 项目后,就会出现此问题。
故障排除
初步尝试通过删除并重新添加 DLL 来解决问题Sandbox 项目中的参考提供了暂时的缓解,但在尝试构建解决方案时问题仍然存在。 Visual Studio 中的对象浏览器确认 DLL 项目引用中存在命名空间。
线索和解决方案
仔细检查更改后,特定行代码被确定为明显的罪魁祸首:
string url = "http://maps.google.com?q=" + HttpUtility.UrlEncode(address);
注释掉此行可以消除命名空间错误并允许项目构建成功。
已发现的错误
该问题源于受影响项目的目标框架设置中默认选择的 .NET Framework 4 客户端配置文件。此配置文件不包括相关代码所需的 System.Web。
修复
解决方案是手动将目标框架更改为“.NET Framework” 4”在“应用程序”选项卡下的“项目属性”中。这可确保使用完整的 .NET Framework 4,其中包括 System.Web。
未来增强
在 Visual Studio 2012 中,通过消除客户配置文件作为新项目的默认选择。随着 .NET 4.5 中客户端配置文件的停用,此问题已得到永久解决。
以上是为什么添加 System.Web 后我的命名空间在 Visual Studio 2010 中不可见?的详细内容。更多信息请关注PHP中文网其他相关文章!