lin*_*rro 9 c# owin asp.net-core
我一直试图在asp.net 5中打开一个文件并且没有取得很大的成功.
在过去你用过Server.MapPath或HostingEnvironment.ApplicationPhysicalPath.它们都在基于OWIN的框架中消失了.
有一个HostingEnvironment类,但它在,System.Aspnet但它需要由托管环境初始化(它不再有一个静态成员,ApplicationPhysicalPath但我猜这个WebRoot成员现在这样做.问题是我找不到它的引用任何地方.
我也看过,Context.GetFeature<>但似乎没有任何功能可以显示应用程序路径,只是请求和响应相关的信息.列出功能的代码可以在这里找到.
<snark>是否能够在ASP.NET中使用已停止使用的文件?</snark>
还有可能我现在脑筋不好,错过了什么.
Kir*_*lla 12
你可以从serivce 的ApplicationBasePath财产获得它Microsoft.Framework.Runtime.IApplicationEnvironment.
示例:https://github.com/aspnet/Mvc/blob/9f1cb655f6bb1fa0ce1c1e3782c43a2d45ca4e37/test/WebSites/FilesWebSite/Controllers/DownloadFilesController.cs#L28
现在有两种方法:
using Microsoft.Extensions.PlatformAbstractions;
public Startup(IApplicationEnvironment appEnv)
{
// approach 1
var path01 = PlatformServices.Default.Application.ApplicationBasePath;
// approach 2
var path02 = appEnv.ApplicationBasePath;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7236 次 |
| 最近记录: |