【发布时间】:2020-09-18 08:13:04
【问题描述】:
我的 ASP.Net Core MVC 项目由 3 个网站项目以及相关的单元测试项目组成,所有这些项目都收集在一个解决方案中。每个网站项目都依赖于常见的东西,例如 JavaScript 库(在 wwwroot/js/... 下)和视图(在 views/... 下)。是否有一些功能可以让我打包这些文件(据我所知,没有一个可以存在于 NetStandard 库项目中)并将它们“安装”在我所有的网站项目中,所以我只需要在一个一个地方?
Razor 类库 (RCL) 几乎可以完成我想做的事情,但我希望能够从所有三个网站项目的视图中引用我的 JavaScript 库。我还希望捆绑器/最小化器能够找到我常用的 JavaScript 和 CSS 文件。据我所知,RCL 只允许 RCL 中的 Razor 页面访问 RCL 中的静态内容(比如我的 JavaScript 和 CSS 文件)。
编辑:
经过深思熟虑,我得出的结论是,我所要求的根本无法“开箱即用”。为了正常工作,调试器和捆绑器/最小化器需要在项目的目录树中找到 js 和 css 文件。我要的是一种方法来拥有像包含这些“共享”文件的“参考项目”之类的东西。我认为是时候采用“科学项目”方法了:我将创建一个包含共享文件的参考项目,并运行一些更新文件的代码(在构建时?通过 MSBuild?通过单元测试代码?)如果它们不匹配,则在参考项目中的项目中。
【问题讨论】:
-
如果足够普遍,根据用例,专用 CDN 可能是合适的。
标签: visual-studio asp.net-core asp.net-core-mvc