일부 WCF 서비스와 통신하기 위해 NetTcp 바인딩을 사용하는 프로젝트 작업 중입니다. 첫째 밖으로 시작할 때 우리는 WCF는 사용하여 호출 만들어 다른 응용 프로그램에서 나쁜 연습 예를했다 다음 우리는 WCF는 영문 페이지로 전송되었던 경우에도 연결 잡고 깨달았다까지 큰 일WCF 오류 로깅
EntityObject sample = new ServiceProxy().GetEntity();
클라이언트 (나는 순결하게 모든 연결을 정리할 것이라고 가정). ELMAH는 결국 연결이 끊어짐에 따라 오류를 기록하고 스택 추적을 보냈습니다. 성능 문제를 해결하기 위해 다음과 같이 변경했습니다.
using (ServiceProxy proxy = new ServiceProxy())
{
sample = proxy.GetEntity();
}
이렇게하면 성능이 상대적으로 좋았습니다. 이 방법의 단점은 프록시에서 오류가 수신 될 때마다 ELMAH가 포착 할 수있는 유일한 점은 채널에 오류가 발생했다는 것입니다. 그런 다음 클라이언트와 서버 모두에서 리스너를 설정 했음에도 불구하고 실제로 일어난 일을 파악할 수있는 로그 (serialListener가있는 WCF 설치 프로그램)를 조사해야합니다. 나는 IErrorHandler 인터페이스를 탐구했고 서비스에 대한 지원을 추가 할 예정이지만 WCF에서 자세한 오류를 가져 오는 다른 방법이 있는지 궁금하다. 잘못했다. 직렬화 할 수없는 이유를 알려주는 객체를 직렬화 할 때 죽으면 특히 유용합니다.
정확히 찾고있는 것과 같습니다. 도와 주셔서 감사합니다. – RubyHaus