在以前的asp.net版本中,HostingEnvironment
有MapPath
方法來獲取和存儲文件的路徑,但在ASP.net 5中我無法使用它。在asp.net中獲取並存儲文件的路徑5
var filepath = HostingEnvironment.MapPath(@"~/Data/product.json");
在以前的asp.net版本中,HostingEnvironment
有MapPath
方法來獲取和存儲文件的路徑,但在ASP.net 5中我無法使用它。在asp.net中獲取並存儲文件的路徑5
var filepath = HostingEnvironment.MapPath(@"~/Data/product.json");
您使用的是RC1嗎? 在RC1中,它取決於您是否正在編寫控制檯或Web應用程序。在控制檯應用程序中,您不能再使用DI,但是PlatformServices.Default
。
PlatformServices.Default.Application
例如,您可以訪問應用程序的基本路徑。靜態屬性的類型是IRuntimeEnvironment
。並有您的應用程序的基本路徑,您可以輕鬆地建立您需要的文件的路徑...
如果您正在構建一個Web應用程序,您應該能夠將IRuntimeEnvironment
注入您的啓動並從那裏使用它。
你必須添加一個對所有東西的Microsoft.Extensions.PlatformAbstractions
包的引用。
也my post here詳情參見
儘管IHostingEnvironment
提供MapPath()
方法,你可能還需要UnmapPath()
了。另一個有用的方法可能是IsPathMapped()
。
你可以在這裏找到它們全部:Reading a file in MVC 6。
而且所有的人,感謝PlatformServices
可用性,在Consolse工作,MVC,並CLASSLIB應用。
HTH
你可以從DI獲得型Microsoft.AspNet.Hosting.IHostingEnvironment'的'一個實例,它有'MapPath'方法。 – Ricky