我有一个带有C#Web应用程序的ASP.NET。我创建的其中一个类需要使用HttpContext。
根据http://msdn.microsoft.com/en-us/library/system.web.httpcontext(v=vs.90).aspx, HttpContext存在于.NET 3.5的System.Web命名空间中(这是我安装的版本)。
然而,当我写HttpContext时。 - >我没有看到自动完成。这就是告诉我HttpContext无法识别的原因。
我完成了我的作业并寻找通常的解决方案:1。我添加了System.Web参考(通过右键单击References - >选择.NET选项卡和特定参考)。 2.我还确保在课程中包含这一行:using System.Web;
请告诉我还能做些什么。如果一切顺利,当我写HttpContext时。 - 我应该看到一个下拉列表,并能够从几个属性/元素中选择“当前”。我是C#和Visual Studio(2008)的新手,但我认为Autocomplete不能正常工作是缺少引用/命名空间/加载错误/其他任何问题的良好指标。
答案 0 :(得分:39)
当您想要实例化 HttpContext 类时,很少使用构造函数。我总是使用静态属性 HttpContext.Current ,它是所有ASP.Net应用程序使用的当前实例。
使用它时,请确保已添加对System.Web.dll程序集的引用并导入 System.Web 命名空间
答案 1 :(得分:5)
这是一个不使用正确框架的简单案例,我指的是完整的胖版本而不是默认的“轻量级版本”。
右键单击Project,然后单击Properties,确保选择最新框架的完整版本,即'.NET Framework 4', not '.NET Framework 4 Client Profile'
答案 2 :(得分:3)
这个课应该有用。
更新:
using System.Web
class YourClass {
public YourClass() {
HttpContext _context = new HttpContext(your parameters)
}
}
答案 3 :(得分:0)
为“使用Org.Apache.Http.Protocol;添加引用”为我解决了。