VS 2008继续删除并重新添加 ASPXCodeBehind

问题描述:

我有一个VS 2008 C#Web项目,每当我对其中的文件进行一些更改(甚至不是项目文件本身)VS将删除一些行像这从文件的csproj:VS 2008继续删除并重新添加<SubType> ASPXCodeBehind</SubType>

<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发生过的事情,而且似乎没有其他开发人员在同一个项目文件上工作,只为我。

有谁知道为什么会发生这种情况,我怎么能阻止它这样做?

+1

有多奇怪,这只是第一次发生在我身上。我昨天晚上检查了我的解决方案,今天早上我的.csproj文件已经更改。在Google上有一点点挖掘,似乎这已经影响了少数几个人!但没有理由或解决方案,因为我可以看到.. – Alex 2009-06-17 05:57:31

+0

同样在这里,这是目前发生在我身上 – Martin 2009-08-24 17:08:28

+1

发生在我身上。完全讨厌。团队中的两个人有VS这样做,而其他人不这样做。看起来像修补程序中的某些内容正在执行此操作。没有帮助,为此我可以找到。 – jcollum 2010-09-17 16:43:57

将文件的内容分割成多个文件 - 每个类可以有一个文件。

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=283434

对我来说,差别取决于Web项目是否是在Visual Studio中打开。

我发现如果我将项目文件提交到版本控制,并且Visual Studio中打开的项目存在SubType元素。关闭解决方案/项目,然后从项目文件中删除子类型元素。现在我总是确保在VS中关闭项目来执行提交,以避免对项目文件进行不必要的更改。

在VS2010上工作,并通过删除solutionFileName.sln.DotSettings.user文件和solutionFileName.suo来解决此问题。这帮了我,试试看。

当在Tortoise SVN中提交项目更改时,这些行也出现在VS2012中的项目文件中。这个项目曾经是一个我转换成Web应用程序的网站。

我可以使用下面的步骤,这需要关闭该项目,以绕过这个问题:承诺SVN

  1. 只是之前使用“BUILD>清理解决方案”清洁解决方案。
  2. 点击“全部保存”按钮保存项目文件。
  3. 使用Tortoise SVN提交更改。
  4. 继续在项目上工作...