OWIN AppBuilder“UseStatic”位从本地文件系统传递文件,这在某些情况下很方便,但我希望它从我在应用程序启动时预先填充的内存 IDictionary 传递内容。任何人都可以为我指出一个很好的方向来调查覆盖/改变行为吗?
谢谢。
你会想要实现你自己的IFileSystem
和IFileInfo
类。可以在CodePlex的dev 分支中看到一个例子src/Microsoft.Owin.FileSystems/EmbeddedResourceFileSystem.cs
。这是基于这个项目的社区贡献。
一旦实施,你会像这样使用它
public class InMemoryFileSystem : IFileSystem
{
public InMemoryFileSystem(IDictionary<string, object> files)
{}
}
var files = LoadFilesIntoDictionary();
app.UseStaticFiles(options => {
options.WithFileSystem(new InMemoryFileSystem(files));
});