的背景
我在 Visual Studio 2019 中工作。我有一个 C# Web APP Razor Pages 项目,它引用了几个 C# 类项目和一个 C# 共享项目,用于其他几个相关 Web 应用项目中常见的文件。
问题
当我将 Web 应用程序项目发布到我的本地或远程 IIS 实例时,没有问题,所有共享项目文件都存在并按预期工作。
但是,当我“只是”构建/运行然后在浏览器中查看它时,共享项目 Helper 和 Pages 符合预期,但共享项目 wwwroot 文件在操作中都丢失了。
想要的
每次我需要查看/解决共享项目中的任何问题时,我都可以但不希望必须在本地发布,所以......
我想找到一种方法,让共享项目 wwwroot 文件夹资产可用于构建/运行- 并且 - 能够以不对其当前工作的发布过程产生不利影响的方式进行操作预期的。
迪茨
相关项目的示例文件夹结构(可能是 tmi,但足够详细,如果我必须对从一个项目到另一个项目的路径做一些事情,这些相对路径对于制作示例来说足够正确)......
- 网吧
- 万维网根
- 我的名字软件
- wwwroot <--来自 web 应用程序和共享项目的所有 wwwroot 文件最终都在Publish上,是的
- 我的名字软件
- 万维网根
- 我的名字
- MyName.Common.Domain
- MyName.Common.Domain.csproj 文件
- 各种文件夹和带有类的子文件夹
- MyName.Common.Domain.csproj 文件
- MyName.Common.Presentation.Web
- MyName.Common.Presentation.Web.shproj 文件
- 助手 <-- 工作正常
- 页面 <-- 工作正常
- wwwroot <--- 这些文件在发布时可用,但在构建/运行时不可用
- 一个容器文件夹
- 其他不相关的东西
- 我的名字.软件
- 我的名字.Software.sln
- 解决方案中包含的相关项目的各种其他 MyName.Software.{Purpose} 文件夹
- 我的名字.Software.Web
- 各种其他文件夹和子文件夹
- wwwroot <-- 这些文件在Build/Run和Publish上都可以按预期使用
- MyName.Software.Web.csproj 文件
- MyName.Common.Domain
从这往哪儿走
当我列出我尝试过的东西和我遇到的问题时,有些事情已经到位。喜欢这个过程,讨厌预处理过程。所以我已经在这里回答了我自己的问题,但会继续发布这个,以便我稍后可以参考它,所以也许它会帮助其他人保持一些头发。此外,如果有其他方法可以做到这一点,请带上他们——考虑替代方案总是好的。:0)