我正在尝试在我的一个 Web 应用程序项目文件中自动检测 web.configs 作为转换预构建事件的一部分,此代码从我的项目文件上升一个文件夹级别并获取每个目录中的所有 web.configs 和子目录:
<ItemGroup>
<WebConfigsRelativePath Include ="..\**\Web.config"/>
</ItemGroup>
这很好用,但是每次我构建和退出 Visual Studio 时,我都会收到一个提示,询问我是否要保存对解决方案文件所做的更改。如果我选择yes,然后打开项目文件,上面的代码就变成了每个web.config的位置
<ItemGroup>
<WebConfigsRelativePath Include="..\Web\Decade\Web.config" />
<WebConfigsRelativePath Include="..\Web\Matrix\RiskAnalysis\Web.config" />
<WebConfigsRelativePath Include="..\Web\Service\Web.config" />
<WebConfigsRelativePath Include="..\Web\Web.config" />
</ItemGroup>
这很好,但我自动检测 web.configs 预构建的全部原因是我可以随意添加和删除 web.configs,而不必硬编码它们的位置,每次我退出 VS,位置都会是硬编码在项目文件中......
有谁知道为什么每次我退出 Visual Studio 时这个 ItemGroup 都会改变?