我想在我的ASP.Net MVC控制器从磁盘读取XSLT文件。 我正在做的是以下几点: string filepath = HttpContext.Request.PhysicalApplicationPath; filepath += "/Content/Xsl/pubmed.xslt"; string xsl = System.IO.File.ReadAllText(filepath); 然而, 在forums.asp.net上的这个线程的一半是下面的引用 HttpContext.Current是邪恶的,如果你在你的mvc应用程序的任何地方使用它,你做错了什么,因为你不需要它。 虽然我不使用Current ,但我想知道在MVC中确定文件的绝对物理path的最佳方法是什么? 出于某种原因(我不知道为什么!) HttpContext不适合我。 有没有更好的(或build议/最佳做法)在ASP.Net MVC磁盘读取文件的方式?
我如何使用C#类库类中的server.mappath方法,它充当我的BusinessLayer我的ASP.NET Web站点
我必须做什么才能使Server.MapPath工作? 我using System.Web; 还有什么? 当我键入Server没有快速结果选项(智能感知)。 任何帮助?
我正在构build一个ASP.NET MVC网站,我正在使用Lucene.Net进行search查询。 我在这里提出了一个关于如何在ASP.NET MVC应用程序中正确地构造Lucene.Net的用法的问题 ,并被告知最好的方法是将我的IndexWriter声明为public static ,以便它可以被重用。 以下是我的SearchController顶部的一些代码: public static string IndexLocation = Server.MapPath("~/lucene"); public static Lucene.Net.Analysis.Standard.StandardAnalyzer analyzer = new Lucene.Net.Analysis.Standard.StandardAnalyzer(); public static IndexWriter writer = new IndexWriter(IndexLocation,analyzer); 由于writer是静态的, IndexLocation也必须是静态的。 因此,编译器给我以下错误Server.MapPath() : 对象引用对于非静态字段,方法或属性“System.Web.Mvc.Controller.Server.get” 有没有一种方法使用Server.MapPath()或类似的静态字段 ? 我该如何解决这个错误? 提前致谢。
我需要使用Server.MapPath()来结合我存储在web.config中的一些文件path。 但是,由于Server.MapPath()依赖于当前的HttpContext(我认为),我无法做到这一点。 当试图使用该方法时,即使它的“可用”,我得到以下exception: 服务器操作在此上下文中不可用。 还有另外一种方法可以将Web根目录相对目录(如~/App_Data/映射到完整的物理path,如C:\inetpub\wwwroot\project\App_data\ ?