18个月后重新审视我自己的问题……框架现在是ASP.NET Core 2.0 MVC,似乎框架,文档和最佳实践已经发生了一些变化.
您应该使用MS docs中描述的FileProvider.在此重新创建该文章没有意义,但请务必:
>将IHostingEnvironment添加到Startup构造函数参数,并将其保存在本地变量中,如文档中所述
>在Startup.ConfigureServices()中,调用services.AddSingleton(HostingEnvironment.ContentRootFileProvider);注册一个IFileProvider服务,也在文档中描述
>将IFileProvider添加到控制器的构造函数参数中,并将其保存在局部变量中
然后,为了实际获得最后修改日期,控制器将看起来像这样:
public class HomeController : Controller
{
private IFileProvider _fileProvider;
public HomeController(IFileProvider fileProvider)
{
_fileProvider = fileProvider;
}
public IActionResult Index()
{
DateTimeOffset lastModifiedDate = _fileProvider.GetFileInfo(@"Views\Home\Index.cshtml").LastModified;
// use it wisely...
return View();
}