Visual Studio 2012 и код контрактов для интерфейсов

У меня есть визуальное студийное решение с проектами, содержащими интерфейсы и контракты, оформленные соответственно с ContractClass и ContractClassFor.

Решение собирается правильно в Visual Studio 2010, но не в Visual Studio 2012. Ошибка:

EXEC: ошибка CC1019: тип "Namespace.Interface" указывает класс "Namespace.ContractClass" в качестве класса контракта

Я обновил до последней версии инструментов Code Contract (1.4.50813.1), запустил "devenv /setup" и перезапустил машину.

Любая помощь для этого? Спасибо

2 ответа

Вы пытались удалить "Perform Static Contract Checking" из окна свойств?

Visual Studio позволяет изменять параметры CodeContract на странице свойств проекта Visual Studio.

В MSDN есть хорошая статья на эту тему с несколькими скриншотами, чтобы помочь вам ( http://msdn.microsoft.com/en-us/magazine/hh148151.aspx)

Существует флажок "Выполнить статическую проверку контракта", который является частой причиной этих проблем.

Если это не решит вашу проблему, могу ли я предложить вам сравнить настройки, имеющиеся в VS2012, с настройками в VS2010, для которых он работал.

Другие вопросы по тегам