Чистое решение Visual Studio не удаляет все ссылки на DLL/проект

У меня есть VS 2008 веб-приложение VS 2008 с кучей ссылок на проекты для пользовательских DLL. Все они находятся на относительном пути от веб-проекта. Недавно я заметил, что Clean Solution удаляет некоторые, но не все, из dll из папки bin\debug веб-приложения. Например:

<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>

Первый работает нормально (очищает его, новые версии копируются в веб-проект при перестройке), а второй - нет. Побочным эффектом является то, что я автоматически не забираю изменения в зависимости.

Спасибо за любую помощь.

Ответ 1

Кажется, что только удаляет файлы, о которых он знает.

Например, старые файлы библиотеки и старые ссылки после переименования проектов все еще существуют. Очень странно. Я всегда предполагал, что "Чистый" был просто простым удалением - и я не совсем понимаю, почему это не так. Заходите и проверяйте каждую папку вручную, если вы сомневаетесь.

Ответ 2

Когда VS не выбирает последнюю dll, если версия такая же. Попробуйте изменить свою версию в AssemblyInfo.cs, и она должна работать.

В прошлом я столкнулся с той же проблемой, когда полагался на размер/временную метку, но позже понял, что, изменяя версию, Studio удаляет старые библиотеки DLL и копирует новые DLL.