zoukankan      html  css  js  c++  java
  • WCF 抛出FaultException<T>异常

    1. DataContract   - new class FaultMessage
        [DataContract]
        public class FaultMessage
        {
            [DataMember]
            public string ErrorCode { get; set; }

            [DataMember]
            public string Message { get; set; }
        }

    2. WCF Service
        try
        {
            return XXX;
        }catch(Exception ex)
        {
            FaultMessage faultMessage = new FaultMessage();
            faultMessage.ErrorCode = "ErrorCode ";
            faultMessage.Message = ex.Message;
            throw new FaultException<FaultMessage>(faultMessage);
        }

    3. ServiceContract    -- add [FaultContract(typeof(FaultMessage))]
        [ServiceContract]
        public interface IGameContract
        {
            [OperationContract]
            [FaultContract(typeof(FaultMessage))]
            IList<DungeonInfo> GetDungeonList();
            [OperationContract]
            [FaultContract(typeof(FaultMessage))]
             ...
        }

    4.UI
        try
        {
            Service1.ServiceClient client = new Service1.ServiceClient()
            XXXX
        }
        catch (FaultException<Service1.FaultMessage> ex)
        {
            LabelMsg.Text = string.Format("ErrorCode:{0}\n Message:{1}", ex.Detail.ErrorCode, ex.Detail.Message);
        }

  • 相关阅读:
    axios拦截器
    Vue路由守卫
    HTML横向滚动条和文本超出显示三个小圆点
    Vue用户名vuex和localStorage双向存储
    javaScript Es6数组与对象的实例方法
    使用vue实现复选框单选多选
    正则表达式常用字符
    jest函数单元测试
    ts中的类
    ts中接口的用法
  • 原文地址:https://www.cnblogs.com/webglcn/p/2479992.html
Copyright © 2011-2022 走看看