Ejemplo n.º 1
0
        /// <summary>
        /// 根据WCF接口类型上的属性,注册wcf调用配置信息
        /// </summary>
        /// <param name="iServiceType">需要注册的类型</param>
        public static void RegisterTypeIfMissing(Type iServiceType)
        {
            WcfServiceAttribute    cfgAtt  = getWcfServiceAttribute(iServiceType);
            WcfClientInvokeCfgInfo cfgInfo = new WcfClientInvokeCfgInfo(cfgAtt.RelativePath, cfgAtt.CredentialFileName);

            RegisterTypeIfMissing(iServiceType, cfgInfo);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 得到WcfServiceAttribute
        /// </summary>
        /// <param name="iServiceType">WcfServiceAttribute使用的类型</param>
        /// <returns>WcfServiceAttribute</returns>
        private static WcfServiceAttribute getWcfServiceAttribute(Type iServiceType)
        {
            object[] desc = iServiceType.GetCustomAttributes(typeof(WcfServiceAttribute), false);
            if (desc == null || desc.Length <= 0)
            {
                throw new MB.Util.APPException("没有设置调用服务的配置信息WcfServiceAttribute!");
            }

            WcfServiceAttribute cfgAtt = desc[0] as WcfServiceAttribute;

            return(cfgAtt);
        }