0
코드 계약을 처음 접했을 때 문제가 발생했습니다.코드 계약을 쿼리에 사용하는 방법은 무엇입니까?
나는 이런 식으로 뭔가를 이동하는 방법에 LINQ 쿼리에 있습니다
MyClass[] fields =
(from p in rType.GetProperties()
where p.CanRead
let fAttr = p.GetCustomAttributes(typeof(MyClassAttribute), true).SingleOrDefault() as MyClassAttribute
where fAttr != null
select new MyClass(p, fAttr)).ToArray();
그리고 나는 내 프로젝트에 코드 계약을 구현하고자합니다. 내가이 시점에 도달 할 때까지 나는 모든 것을 다했다. 정적 검사기를 실행할 때 쿼리에 정의 된 변수 p 및 fAttr에 대한 두 가지 전제 조건 (Contract.Requires)을 추가해야한다고 제안합니다. 또한 증명되지 않은 몇 가지 요구 사항이 있습니다.
어떻게 해결할 수 있습니까? 어떤 아이디어? 사전에
internal MyClass(PropertyInfo p, MyClassAttribute att)
{
Contract.Requires(p != null);
Contract.Requires(att != null);
...
}
감사합니다 :) 내가 이것을 재현 할 수없는 것
오, 이런, 그냥 내 질문에 답변을 필터링 내 StackOverflow 있었 실현, 잠시 동안 오래된 질문에 대답 : ... P는 – porges