如何在 MVC3 应用程序的 OnApplicationStarted 中获取应用程序根目录(完整物理路径)?
Posted
技术标签:
【中文标题】如何在 MVC3 应用程序的 OnApplicationStarted 中获取应用程序根目录(完整物理路径)?【英文标题】:How to get application root (full physical path) in OnApplicationStarted in MVC3 application? 【发布时间】:2013-05-03 12:13:02 【问题描述】:直到现在我都用过:
Dim appPath = HttpContext.Current.Request.MapPath(HttpContext.Current.Request.ApplicationPath)
但是今天我将我的应用程序从 IIS6 移动到 IIS7 并且我得到“请求在此上下文中不可用”异常。这是由于 IIS7 中的集成模式管道。我不想进入经典模式,所以我正在寻找另一种获取应用程序路径的方式(即“C:\SVN\L2E\trunk\Website”)。
有没有人知道如何获得我的 MVC3 应用程序的完整物理路径?
【问题讨论】:
【参考方案1】:您可以使用System.Web.HttpRuntime.AppDomainAppVirtualPath 获取虚拟路径并调用System.Web.Hosting.HostingEnvironment.MapPath 将虚拟路径映射到物理路径。
【讨论】:
谢谢,工作正常:)。奇怪我自己找不到【参考方案2】:使用这个:
AppDomain.CurrentDomain.BaseDirectory
【讨论】:
以上是关于如何在 MVC3 应用程序的 OnApplicationStarted 中获取应用程序根目录(完整物理路径)?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 MVC3 中向页面 url 添加“文本 slug”?
如何在 Index.cshtml MVC3 上显示两个 Partials 视图数据?