Начало работы с кодами контрактов - PullRequest
1 голос
/ 29 марта 2010

В VS2010 и .NET 4.0 я вижу ярлыки в intellisense для добавления контрактов в мой код (например, cr, crr), но когда я вкладываю их для добавления, код (такой как Contract.Requires) не имеет допустимая сборка, поэтому нет смысла (тип не может быть найден в основном).

Как именно мне начать работать с контрактами кода?

РЕДАКТИРОВАТЬ: Все методы существуют в System.Diagnostics.Contracts, но я думал, что я буду использовать атрибуты во всем? Кроме того, существует так много разных .dll для контрактов!

Спасибо

1 Ответ

2 голосов
/ 29 марта 2010

Сборка просто mscorlib - и Contract находится в пространстве имен System.Diagnostics.Contracts.

<plug> Для получения дополнительной информации о Code Contracts вы можете купить второе издание C # в Depth и прочитать главу 15. (Эта глава была доступна бесплатно, но сейчас я не боюсь). </plug>

Или, конечно, вы также можете прочитать документы, поскольку они довольно хороши:)

Если вы обнаружите, что вам не хватает пространства имен System.Diagnostics.Contracts, стоит проверить, что вы действительно нацеливаетесь на .NET 4 - если вы создаете проект .NET 3.5 в VS2010, у которого не будет доступных контрактов кода (без добавления в любом случае явная ссылка на сборку).

...