我已经EntityFrameworkFileProvider为我的ASP.NET核心Web应用程序实现了,我希望ViewDbContext实例由ASP.NET核心DI框架在构造函数中注入:
(ViewDbContext是dbContext)
public class EntityFrameworkFileProvider : IFileProvider
{
private ViewDbContext _context;
public EntityFrameworkFileProvider(ViewDbContext context)
{
/* should be injected by asp.net core DI */
_context = context;
}
public IDirectoryContents GetDirectoryContents(string subpath)
{
.....
}
public IFileInfo GetFileInfo(string subpath)
{
var result = new DatabaseFileInfo(_context, subpath);
return result.Exists ? result as IFileInfo : new NotFoundFileInfo(subpath);
}
public IChangeToken Watch(string filter)
{
return new DatabaseChangeToken(_context, filter);
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我将它们添加EntityFrameworkFileProvider到RazorViewEngineOptionstartup.cs中。如何使用startup.cs方法使 …