如果要得到传统的ASP.Net应用程序中的相对路径或虚拟路径对应的服务器物理路径,只需要使用使用Server.MapPath()方法来取得Asp.Net根目录的物理路径。
但是在Asp.Net Core中不存在Server.MapPath()方法,Controller基类也没有Server属性。
在Asp.Net Core中取得物理路径:
从ASP.NET Core 2.0开始,可以通过注入 IHostingEnvironment 服务对象来取得Web根目录和内容根目录的物理路径,IHostingEnvironment保留了应用程序的基本信息,如下所示
using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Mvc; namespace ConsoleApp1 { public class HomeController : Controller { private readonly IHostingEnvironment _hostingEnvironment; public HomeController(IHostingEnvironment hostingEnvironment) { _hostingEnvironment = hostingEnvironment; } public ActionResult Index() { //Web根目录 string webRootPath = _hostingEnvironment.WebRootPath; //内容根目录 string contentRootPath = _hostingEnvironment.ContentRootPath; return Content(webRootPath + " " + contentRootPath); } } }
。。。。。。。。。。未拷贝完.......
转载:https://www.cnblogs.com/likui-bookHouse/p/11984460.html