c# - 与 Server.MapPath 等效的功能齐全的 ASP.Net Core
问题描述
我正在寻找与 System.Web 的 Server.MapPath 等效的 ASP.Net Core (2.0)。
对此的一般建议是将 IHostingEnvironment 的 ContentRootPath 与 Path.Combine 一起使用
例如
var fullPath = Path.Combine(_hostingEnvironment.ContentRootPath, localPath);
但是如果 localPath 可能是相对路径(以 '~' 开头),那就行不通了。或者 localPath 可能以“/”开头,或者没有特殊前缀。如果您查看 Server.MapPath 的参考源(它似乎在后台调用 Request.MapPath),它是一个非常复杂的野兽,可以处理很多场景。它使用另一个类 VirtualPath,而后者又使用 UrlPath 类。它肯定不只是调用 Path.Combine。
所以我想知道功能丰富的东西是否已经进入了 ASP.Net Core。
作为记录,我正在查看的 System.Web.HttpRequest 的参考源在这里。
谢谢
解决方案
推荐阅读
- i18next - i18next:是否有最大密钥长度?或键中不允许使用特殊字符?
- r - 错误 - “自动绘图不支持 tbl_df/tbl/data.frame 类型的对象。”
- php - 将 PHP 命名空间用于类但收到使用错误
- python - 如何在 python 图中遮蔽某些区域?
- r - ggplot2 for R 中的主题 _stata 是否仍然可用?我收到一条错误消息
- c++11 - 为什么 async() 在临时变量上写入并且没有发生崩溃
- sockets - 如何在 tcl 中保持活动的 tcp 套接字
- javascript - v-if中渲染子组件时vue调用子组件的函数
- pandas - 在 Pyspark 中的 groupBy 和 user-define-aggregate-function 之后过滤数据框将导致 java.lang.UnsupportedOperationException
- excel - 将工作簿保存在两个不同的驱动器位置