Tôi muốn xử lý tất cả các yêu cầu của WebServiceException
do khách hàng dịch vụ của tôi gửi. Có cách nào tốt để làm điều này ngay bây giờ không?Xử lý ngoại lệ cho ServiceClientBase
Ví dụ: tôi đang chuyển một ServiceClientBase duy nhất xung quanh cửa sổ ứng dụng biểu mẫu. Tôi đang chuyển một khóa api đến máy chủ trong tiêu đề http. Đối với bất kỳ yêu cầu nào mà khóa api không hợp lệ, tôi muốn hiển thị một hộp thông báo cho người dùng biết rằng yêu cầu đó là trái phép và họ nên đặt khóa API. Nhưng tôi không muốn mã này ở khắp mọi nơi:
try
{
_client.Get(new ReqDto());
}
catch (WebServiceException ex)
{
if(ex.StatusCode == 401)
Util.ShowUnauthorizedMessageBox();
}
Something như thế này sẽ được tốt đẹp:
_client.WebServiceExceptionHandler += TheHandler;
Tôi biết có bộ lọc phản ứng địa phương mà tôi có thể móc vào, nhưng tôi cần WebServiceException thể hóa .
Tôi đang xem ServiceClientBase.cs để xem tôi có thể làm gì nhưng tôi đánh giá cao bất kỳ trợ giúp nào. Cảm ơn.