这有点奇怪,但是当人们有多种解决方案并将外壳固定在一个解决方案中而不是另一个解决方案中时,就会发生这些事情。当项目文件被重新渲染时(因为一个项目被添加,重命名,解决方案项目改变等),然后它会选择更正的大小写。如果解决方案文件具有“正确”的大小写,则不会发生任何变化,但如果解决方案文件不匹配,则可能会导致这种级联。
在一种解决方案中固定外壳可能会在另一种解决方案中触发相反的行为。因此,必须立即在所有解决方案文件中修复此问题。如果您有多个分支,请小心。
解决此问题的最佳方法是一次性解决文件系统、项目文件和解决方案文件上的大小写问题。使用文本编辑器执行此操作通常比通过 Visual Studio 项目系统更容易。正则表达式搜索和替换可以在这里创造奇迹。确保一次修复所有这些:
- (所有)解决方案文件的内容
.*proj
导致问题的文件
- 文件系统路径(您可能必须先更改多于大小写才能进行大小写更改)。还要确保您的版本控制系统将接受更改。
.*proj
其他文件中的项目引用
当单个项目的大小写固定时,更改可能会级联到引用有问题的项目的其他项目文件。项目文件中的ProjectReference
元素具有问题项目的相对文件系统路径,并且还捕获其名称。您可以在发布的屏幕截图中清楚地看到这一点:
