как удалить ссылку Microsoft.CodeContracts из решения? - PullRequest
0 голосов
/ 12 апреля 2011

A имеет большое решение веб-службы (написанное на C # для .NET 3.5), которое состоит из 16 отдельных проектов (много библиотек классов, несколько веб-приложений и проектов установки). Разработано в visual studio 2010.

Недавно я экспериментировал с Microsoft.CodeContracts и после оценки решил, что он не подходит для моих нужд. Я удалил весь код, ссылающийся на него, и удалил ссылки на сборки из всех проектов, на которые он ссылался.

Однако мой веб-сервис начал случайным образом возвращать это сообщение об ошибке:

"Could not load file or assembly 'Microsoft.Contracts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=736440c9b414ea16' or one of its dependencies. The system cannot find the file specified."

Как / Почему он все еще пытается загрузить эту сборку, когда я удалил весь код и ссылки на него?

Продолжая расследование, я все еще обнаруживаю, что файл Microsoft.Contracts.dll отображается в папке / bin / моего веб-приложения, хотя ни один проект не ссылается на него. Он также указан как «обнаруженная зависимость» в моем проекте установки, но я на 100% уверен, что ни один из моих проектов не использует его!

Это сводит меня с ума - очевидно, что что-то скрывается вокруг ссылки. Как я могу удалить все следы Microsoft.CodeContracts из моего решения?

1 Ответ

3 голосов
/ 12 апреля 2011

В файлах проекта CSharp есть множество XML-элементов, которые начинаются с CodeContracts.

Удалите их, если вам это необходимо.

Будет столько разделов, сколько у вас есть конфигураций{Release, Debug} x {Любой ЦП, Смешанные платформы} = 4. Сделайте это для каждого файла * .csproj в вашем решении.

Имейте в виду, что CodeContracts условно генерирует / переплетает код, поэтому ваше приложение может работатьпо-разному.

...