我必须做什么才能使Server.MapPath
工作?
我有using System.Web;
还有什么?当我输入Server
时,没有用于Server
的快速结果选项(智能感知)。
有什么帮助吗?
你可以尝试使用这个
System.Web.HttpContext.Current.Server.MapPath(path);
或使用HostingEnvironment.MapPath
System.Web.Hosting.HostingEnvironment.MapPath(path);
您的项目需要引用程序集System.Web.dll
。服务器是类型 HttpServerUtility
的对象。例:
HttpContext.Current.Server.MapPath(path);
如果我们从线程调用它,System.Web.HttpContext.Current.Server.MapPath("~/")
会给出 null。
所以,尝试使用
System.Web.Hosting.HostingEnvironment.MapPath("~/")
如果没有,请添加对System.web
的引用。在"引用"文件夹中执行此操作。
然后,您可以使用Hosting.HostingEnvironment.MapPath(path);
bool IsExist = System.IO.Directory.Exists(HttpContext.Current.Server.MapPath("/UploadedFiles/"));
if (!IsExist)
System.IO.Directory.CreateDirectory(HttpContext.Current.Server.MapPath("/UploadedFiles/"));
StreamWriter textWriter = File.CreateText(Path.Combine(HttpContext.Current.Server.MapPath("/UploadedFiles/") + "FileName.csv"));
var csvWriter = new CsvWriter(textWriter, System.Globalization.CultureInfo.CurrentCulture);
csvWriter.WriteRecords(classVM);
尝试添加System.Web
作为对项目的引用。
您需要添加引用 ( System.Web
)参考系统网
这篇文章已经有几年的历史了,但我所做的是将这一行添加到您类的顶部,您仍然可以使用 Server.MapPath
Dim Server = HttpContext.Current.Server
或者你可以做一个函数
Public Function MapPath(sPath as String)
return HttpContext.Current.Server.MapPath(sPath)
End Function
我致力于让事情变得更容易。我还将其添加到我的实用程序类中,以防万一我再次遇到这种情况。
我遇到了同样的问题,我想这可能会对某人有所帮助。正如这个问题的原始海报所问的那样
我必须做什么才能使Server.MapPath工作?
我使用过系统网;
我们编写的类应该实现 System.Web.UI.Page
例如,我们的类名是MyClass
public class MyClass: System.Web.UI.Page
{
// Code runs here
}