无法添加System.Web.dll引用

45
我试图使用包含在System.Web.dll程序集中的HTTP功能。然而,虽然这个dll似乎存在于与项目中引用的其他所有dll相同的目录中,但它未能链接并引发警告 - “找不到所引用的组件'System.Web'”。然而,该dll绝对存在于项目引用的所有其他文件夹中,并且在“浏览引用”模式下选择它可以将其添加 - 然后它无法填充“路径”属性。我做错了什么吗?如何使System.Web在我的项目中可用?
非常感谢任何帮助!
编辑:我在“添加引用”窗口的.Net选项卡中没有对System.Web的引用。

我刚刚进入了csproj文件并添加了:<Reference Include="System.Web" />,在项目重新加载后,它从GAC中提取了正确的版本。 - Brain2000
5个回答

79

对于找不到".Net引用"下的"System.Web"的人来说,这可能是答案:

您需要右键单击项目->属性->然后更改"目标框架"(Target framework),它可能是".NET Framework 4客户端框架(.NET Framework 4 Client Profile)",改为".NET Framework 4"。

这个答案是由Tinister(感谢)在以前的帖子中作为回复给出的。但我认为在他原始帖子中有点隐藏。所以我把它放在这里以便更容易被看到。希望能帮助到您。


Windows Phone怎么样? - danielrvt

33
如果您选择 .NET 3.5 或 4 客户端框架,则看不到 ASP.NET 组件。另外,您应该尝试使用 System.Net 中的 HTTP 类。

40
仅做澄清,对于可能通过谷歌(就像我一样)遇到这个问题的人,您需要右键单击项目->属性->然后更改“目标框架”,它可能是“.NET Framework 4客户端配置文件”,而要改为“.NET Framework 4”。 - Tinister

10

System.Web 应该从 GAC 中引用。这个程序集与您的应用程序文件夹无关。

alt text


1
我没有那些.NET引用 - 只有System.Web.Services和System.Web.ApplicationServices出现。 - JoeR

8

1 在解决方案资源管理器中右键单击“引用”,然后按添加引用...

2 选择浏览选项卡,转到C:\Windows\assembly\GAC_32\System.Web\System.Web.dll并将dll文件添加到您的引用中。


0
你是在尝试添加对 System.Web.dll 文件本身的引用吗?System.Web 在任何 Windows 系统上都在 GAC 中,因此当你在“添加引用”对话框中添加引用时,请从 .NET 选项卡中选择 System.Web。

我没有那些.NET引用 - 只有System.Web.Services和System.Web.ApplicationServices出现。因此尝试添加dll本身。 - JoeR

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