本篇内容主要讲解“WCF的异常处理是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“WCF的异常处理是什么”吧!
WCF(Windows Communication Foundation) -异常处理:一般Exception的处理,FaultException和FaultException<T>的抛出和处理,使用IErrorHandler处理异常。
下面介绍第三种异常:FaultException<T>的抛出和处理
/// <summary> /// 错误信息实体类(用于错误契约FaultContract) /// </summary> [DataContract] public class FaultMessage { /// <summary> /// 错误信息 /// </summary> [DataMember] public string Message { get; set; } /// <summary> /// 错误代码 /// </summary> [DataMember] public int ErrorCode { get; set; } }
[ServiceContract] public interface IHello { [OperationContract] [FaultContract(typeof(FaultMessage))] void HelloFaultExceptionGeneric(); }
/// <summary> /// Hello类 /// </summary> public class Hello : IHello { /// <summary> /// 抛出FaultException<T>异常 /// </summary> public void HelloFaultExceptionGeneric() { throw new FaultException<FaultMessage>(new FaultMessage { Message = "抛出FaultException<T>异常", ErrorCode = -1 }, "为了测试FaultException<T>用的"); } }
protected void btnHelloFaultExceptionGeneric_Click(object sender, EventArgs e) { ExceptionService.HelloClient proxy = new ExceptionService.HelloClient(); try { proxy.HelloFaultExceptionGeneric(); } catch (System.ServiceModel.FaultException<ExceptionService.FaultMessage> ex) { lblMsg.Text = string.Format("错误代码:{0};错误信息:{1};错误原因:{2}", ex.Detail.ErrorCode.ToString(), ex.Detail.Message, ex.Reason.ToString()); } finally { proxy.Close(); } }
到此,相信大家对“WCF的异常处理是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。