[英]ASP.NET Core 2.1 Serve static files from another project
我正在尝试通过ASP.NET Core 2.1后端为API和Angular前端提供服务。 Startup.cs
在项目MyApp.Api
。 我希望从另一个项目MyApp.FrontEnd
的wwwroot中提取静态文件。
我看过这篇文章 ,描述了以下方法
app.UseStaticFiles(new StaticFileOptions {
FileProvider = new EmbeddedFileProvider(
assembly: Assembly.Load(new AssemblyName("OpenIddict.Assets")),
baseNamespace: "OpenIddict.Assets")
});
但是,当我尝试用项目名称替换“ OpenIddicts.Assets”时,出现以下错误:
FTL应用程序启动异常System.IO.FileNotFoundException:无法加载文件或程序集“ MyApp.FrontEnd,文化=中性,PublicKeyToken =空”。 该系统找不到指定的文件。 文件名:“ MyApp.FrontEnd,文化=中性,PublicKeyToken =空”
上面链接的文章中引用的GitHub存储库似乎不再存在。 我认为我在某个明显的地方不见了。 任何帮助,将不胜感激。
MyApp.FrontEnd.dll
必须存在于输出文件夹中。 如果您发布主项目(引用了MyApp.FrontEnd
),那么一切都会正常。
如果您可以从程序集访问某些类型,则可以尝试Assembly.GetAssembly(type)
而不是Assembly.Load(...)
,即
app.UseStaticFiles(new StaticFileOptions {
FileProvider = new EmbeddedFileProvider(
assembly: Assembly.GetAssembly(typeof(SomeClassFromAssembly)),
baseNamespace: "OpenIddict.Assets")
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.