C# Visual Studio清洁解决方案没有';t删除正在移动的所有DLL/项目引用

C# Visual Studio清洁解决方案没有';t删除正在移动的所有DLL/项目引用,c#,visual-studio-2008,build,dependencies,project-reference,C#,Visual Studio 2008,Build,Dependencies,Project Reference,我有一个VS2008C#web应用程序,其中有一堆自定义DLL的项目引用。这些都位于web项目的相对路径上。最近我注意到Clean Solution从web应用程序的bin\debug文件夹中删除了一些DLL,但不是全部。例如: <Reference Include="TowerCo.Utilities, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>Fa

我有一个VS2008C#web应用程序,其中有一堆自定义DLL的项目引用。这些都位于web项目的相对路径上。最近我注意到Clean Solution从web应用程序的bin\debug文件夹中删除了一些DLL,但不是全部。例如:

<Reference Include="TowerCo.Utilities, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\..\Components\TowerCo.Utilities\bin\Debug\TowerCo.Utilities.dll</HintPath>
</Reference>
<Reference Include="TowerCo.WebControls, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\..\Components\TowerCo.WebControls\bin\Debug\TowerCo.WebControls.dll</HintPath>
</Reference>

假的
..\..\Components\TowerCo.Utilities\bin\Debug\TowerCo.Utilities.dll
假的
..\..\Components\TowerCo.WebControls\bin\Debug\TowerCo.WebControls.dll
第一个正常工作(清理清理,重新生成时将新版本复制到web项目),但第二个正常工作。一个副作用是,我不会自动获取对依赖项的更改


感谢您的帮助。

如果版本相同,VS有时不会选择最新的dll。尝试在AssemblyInfo.cs中更改您的版本,它应该可以工作


在过去,当我依赖于大小/时间戳时,我也面临同样的问题,但后来我意识到,通过更改版本,Studio会删除旧的DLL并复制新的DLL

它似乎只删除它“知道”的文件


例如,旧库文件和重命名项目后的旧引用仍然存在。很奇怪。我一直认为“Clean”只是一个简单的删除——我不太明白为什么不是。如果有疑问,请进入并手动检查每个文件夹。

GAC中的第二个DLL可能与第一个DLL不一样吗?好主意,但不,我在GAC中没有任何DLL。一般来说,我们使用项目引用,并在每个应用程序中部署单独的组件副本。似乎存在一个相关的问题,即生成服务器不希望部署同一个未清理的程序集。编译时,它可在所有其他开发人员计算机上工作。删除未删除的dll时,系统是否正在使用(或保留)该dll?请尝试生成/重新生成您的解决方案。我可以确认,当您以最小的修订号修改AssemblyInfo.cs版本号时,仍然会出现此问题。