안녕하십니까 CodeContracts 관한 약간의 문제가 있습니다. 클래스 foo (string s1, string s2) 클래스를 가진 클래스 라이브러리 프로젝트가 있습니다; foo 메소드 안에는 Contract.Requires (s1! = null)가 있습니다. 그래서 내 코드의 의미를 이해하면 (예, 방금 CodeContracts를 설치하고 함께 놀았습니다 :) 계약은 빌드 프로세스 및 런타임 중에 ArgumentException>을 던져 s1! = null 표현식을 검사합니다. 클래스 lib 프로젝트에서 foo (null, "test")를 호출 할 때 디자이너가 문제에 대해 알려주지 만 동작을 테스트하려고했지만 winform 앱 프로젝트에서 호출 할 때 경고 메시지가 표시되지 않습니다. 오류 목록 창. 그렇다면 코드 계약은 외부 프로젝트가 아닌 프로젝트에만 적용됩니다. 감사CodeContracts 문제
UPDATE
내가 추가 한 전제 조건이 정적 분석에서 작동하지 않는 것을 언급하는 것을 잊었다. 그러나 런타임에 적절한 메시지와 함께 ArgumentException을 던집니다.
절대 생명의 은인, 저를 미치게했습니다! –
기쁘게 도와 드릴 수있었습니다 :) – Davita
Thank you !! 이 경우 적어도 경고 또는 무언가를 추가해야합니다. 이 질문 이후 거의 5 년 만에이 문제는 저에게 * 시간 *을 들었습니다 ... 인터넷에서이 행동이 문서화 된 유일한 곳입니다. – Sabre