Hello
У меня есть небольшая проблема, касающаяся CodeContracts. У меня есть проект библиотеки классов, который как класс с методом foo (строка s1, строка s2);
внутри метода foo у меня есть Contract.Requires (s1! = null).
Поэтому, если я понимаю смысл моего кода (да, я только что установил CodeContracts и поигрался с :), контракт проверит выражение s1! = Null во время процесса сборки и во время выполнения, выдав ArgumentException>.
Я хотел проверить поведение, когда я вызываю foo (null, «test») из проекта класса lib, дизайнер рассказывает мне о проблеме, но когда я вызываю ее из проекта приложения winform, я не получаю никаких предупреждений в окно списка ошибок. Значит ли это, что контракты кода работают только в проекте, в котором они находятся, а не за его пределами?
Спасибо
UPDATE
Я забыл упомянуть, что добавленные мной предварительные условия не работают при статическом анализе. Однако они генерируют ArgumentException с соответствующим сообщением во время выполнения.