我在哪里可以找到System.Web.HttpContext.Current.Server dll?

Siv*_*ban 3 c# assemblies reference system.web

我在哪里可以找到System.Web.HttpContext.Current.Server dll.我想在我的代码中使用Server.MapPath(),它需要System.Web.HttpContext.Current.Server命名空间.甚至从我找不到的引用,并将System.Web.HttpContext.Current.Server添加到我的解决方案.有帮助吗?

Ehs*_*jad 5

右击参考 >>然后单击添加引用,并在大会单击框架和搜索的System.Web并检查复选框,并单击OK按钮,在你的项目中添加它的参考:

在此处输入图片说明

System.Web现在可以参考Now和Now System.Web,在您的情况下,可以使用名称空间/程序集下的所有类型和方法HttpContext

System.Web.HttpContext


Jon*_*eet 5

System.Web.HttpContext.Current.Server不是名称空间.让我们分解一下:

  • System.Web 是命名空间
  • HttpContext是一种类型(在System.Web程序集中)
  • Current是一个静态属性HttpContext,返回一个HttpContext引用
  • ServerHttpContext类型中的实例属性HttpServerUtility

所以你需要的装配System.Web; 指令中需要的命名空间using(如果需要)是System.Web.

所以:

using System.Web;
...
var path = HttpContext.Server.Current.MapPath(...);
Run Code Online (Sandbox Code Playgroud)

请注意,HostingEnvironment.MapPath就我所知,更现代的等价物不依赖于当前的HTTP上下文.(HostingEnvironmentSystem.Web.Hosting命名空间中,但仍在程序集中System.Web.)