이제 .NET Framework (.asmx 파일, WCF 제외)를 사용하여 WebServices를 둘러 보았습니다. 어떤 종류의 비즈니스 오류가 메서드 호출에서 발생했음을 사용자에게 알리는 것이 가장 좋은 방법인지 궁금합니다.웹 서비스에서의 오류 처리 모범 사례
내 작은 테스트 케이스 : 난 중앙 서버에 등록해야 프로브를 측정 한
. 각 프로브에는 다른 물리적 주소가 있어야합니다. 등록하려면, 그들은 (웹 서비스를 통해)를 호출해야합니다
[WebMethod]
public void RegisterReadingStation(out Guid sessionId, Int64 physicalAddress)
은 이제 서명이 돌에 설정되어 있지 않습니다 - 사실, 그게 내가 알아 내기 위해 노력하고있어입니다. :) 이미 찍은 실제 주소를 사용하여 자체 등록을 시도하는 중일 때 어떻게 든 프로브에 경고해야합니다.
- 이 정보를 포함 SOAPException이 던져 :
내가 볼때
, 나는 몇 가지 가능성을 얻었다. 그러나 string :: 메시지는 프로그래밍 방식으로 검사하는 것이 쉽지 않습니다. - return 매개 변수 (또는 더 단순한 열거 형)로 일종의 value-class를 사용하십시오. 이 작업을 수행하면 서버/클라이언트의 클래스를 수동으로 serialize/deserialize해야한다고 생각합니다.
이것에 대한 의견이 있으십니까?
Eek, C 일로 돌아 가기. 이 접근법의 문제점은 매우 유연하지 않다는 것입니다. stacktrace 또는 메시지 또는 사용자 정의 오류 메시지를 추가 할 수 없습니다.이 쉽게 및 다중 호환 방법을 밖으로 될 볼 수 있습니다. – cwap
나는 단순함의 측면에서 오류가있는 웹 서비스에 대한 감사를 느낀다. –
이것이 최고 투표 결과가 아니지만이를 받아 들일 것입니다. 나는 "웹 서비스가 사용하기 쉽도록해야한다"는 것을 좋아한다. 그래서 지금은 악이 붙어있다. :) – cwap