看看PinpointTownes是如何在他的OpenIddict項目中實現的。
您可以使用UseStaticFiles
致電EmbeddedFileProvider
。它是rc1-final軟件包的一部分,你可以看到here。相關代碼可在GitHub找到。
只是爲了未來的讀者:
app.UseStaticFiles(new StaticFileOptions {
FileProvider = new EmbeddedFileProvider(
assembly: Assembly.Load(new AssemblyName("OpenIddict.Assets")),
baseNamespace: "OpenIddict.Assets")
});
OpenIddict.Assets
是包含靜態資源組裝/項目名稱。
更新:
挖通過源了一下,找到合適的存儲庫之後,還有一個PhysicalFileProvider
你可以改用包裝成組裝和點到任意文件夾中文件系統。
app.UseStaticFiles(new StaticFileOptions {
FileProvider = new PhysicalFileProvider("/path/to/shared/staticfiles")
});
更新2:
只是爲了完整起見,也有一個CompositeFileProvider
,你可以用它來有多個IFileProviders
創建某種虛擬文件系統的結構,即,如果該文件在給定位置的PhysicalFileProvider
中找不到,請從EmbeddedFileProvider
加載它。
目前不可能將內容文件包含在通過構建創建的nuget中,但我的理解是,一旦我們進入RC2,它應該是可能的 –
就目前而言,我已經寫了一些gulp任務來複制將一個庫項目中的HTML/JS/CSS資源共享到一個解決方案中的幾個不同的Web項目 - 如果有點冒險的話,它可以很好地工作......如果這聽起來很有幫助,我可以把它寫成一個答案,我做的?它每次都作爲預生成任務運行,因此不需要手動同步。 –
@MarkHughes我已經制定了一個計劃,以防止這是唯一的解決方案,但可以隨時與您分享。這對我的特殊情況沒有幫助,但其他人可能會覺得它有用。 – hultqvist