.Net Core 获取应用物理路径的常见问题

如果要得到传统的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 + "\n" + contentRootPath);
            }
        }
    }

 

 。。。。。。。。。。未拷贝完.......

 

转载:https://www.cnblogs.com/likui-bookHouse/p/11984460.html

 

posted @ 2021-08-07 17:29  冲向蓝天  阅读(258)  评论(0编辑  收藏  举报