OWIN Alter UseStatic?

OWIN AppBuilder“UseStatic”位从本地文件系统提供文件,这在某些情况下很方便,但我想让它从内存IDictionary中提供内容,这是我在应用程序启动时预先填充的内容.任何人都可以指出我的方向来调查压倒/改变行为吗?

谢谢.

最佳答案 您将需要实现自己的IFileSystem和IFileInfo类.在src /Mic.Owin.FileSystems / EmbeddedResourceFileSystem.cs下的
CodePlex上的dev分支中可以看到这方面的一个示例.这是基于
this project的社区贡献.

一旦实现,您将使用它

public class InMemoryFileSystem : IFileSystem
{
    public InMemoryFileSystem(IDictionary<string, object> files)
    {}
}

var files = LoadFilesIntoDictionary();

app.UseStaticFiles(options => {
    options.WithFileSystem(new InMemoryFileSystem(files));
});
点赞