Чистое решение Visual Studio не удаляет все dll / ссылки на проекты при перемещении - PullRequest
11 голосов
/ 25 октября 2010

У меня есть веб-приложение VS 2008 C # с кучей ссылок на проекты пользовательских библиотек. Все это на относительном пути от веб-проекта. Недавно я заметил, что 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>

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

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

Ответы [ 2 ]

4 голосов
/ 15 января 2013

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

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

2 голосов
/ 15 февраля 2011

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

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

...