我有一个VS 2008 C#Web项目,每当我对其中的文件进行一些更改(甚至不对项目文件本身)时,VS都会从csproj文件中删除一些这样的行:
<SubType>ASPXCodeBehind</SubType>
这样的事情:
<Compile Include="Default.aspx.cs">
<DependentUpon>Default.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
将成为
<Compile Include="Default.aspx.cs">
<DependentUpon>Default.aspx</DependentUpon>
</Compile>
但是下次我在这个项目上工作时,它会添加这些行!它像这样来回走动,导致我们的源控制系统中出现了许多无意义的“变化”。这在VS 2005中从未发生过,对于只在我这个项目文件上工作的其他开发人员来说,它似乎没有发生。
有谁知道为什么会这样,以及如何阻止它这样做?
答案 0 :(得分:10)
对我而言,差异取决于Web项目是否在Visual Studio中打开。
我发现如果将项目文件提交到版本控制,并且在Visual Studio中打开项目,则存在SubType元素。关闭解决方案/项目,然后从项目文件中删除SubType元素。现在我始终确保在VS中关闭项目时执行提交,以避免对项目文件进行不必要的更改。
答案 1 :(得分:6)
使用VS2010并通过删除solutionFileName.sln.DotSettings.user文件和solutionFileName.suo解决了此问题。这对我有所帮助,试一试。
答案 2 :(得分:4)
将文件内容拆分为多个文件 - 每个类别一个文件可能会有所帮助。
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=283434
最新链接:
答案 3 :(得分:0)
在Tortoise SVN中提交项目更改时,这些行也出现在VS2012的项目文件中。这个项目曾经是我转换成Web应用程序的网站。
我可以使用不要求关闭项目的以下步骤绕过此问题: