1
나는 노출하고자하는 기본 클래스에 대한 래퍼 역할을하는 데이터 계약 집합을 가지고 있습니다. 빠른 예는 다음과 같습니다Datacontracts 두 번 실행되는 속성 가져 오기 도구
[DataMember]
public List<decimal> Points
{
get
{
return sourceObject.ListPoints();
}
private set{}
}
우리는 우리가 (우리가 객체 그래프를 변환 순환 참조 방지 할 필요가있다) 먼저 데이터를 마사지해야 할 몇 가지 다른 특성을 가지고있다.
우리가 보게되는 문제는이 getter가 서비스 작업 내에서 한번, 두 번 연속적으로 실행된다는 것입니다. 이로 인해 두 가지 문제가 발생합니다.
- 수동으로 컬렉션에 추가합니다. 컬렉션이 두 번 실행되기 때문에 컬렉션이 중복으로 채워집니다.
- 두 번째 실행 중에 예외가 발생하면 작업의 try/catch 외부에서 예외가 발생하고 오류가 발생하지 않습니다. 이 서비스는 숨겨진 시간 초과 메시지를 발생시키고 오류를 확인하는 유일한 방법은 WCF 추적 로그를 통한 것입니다.
레이스 조건 경고 예를 들어! –