예제 #1
0
 /// <summary>
 /// 使用对象类型注册Http请求服务,会自动注册该对象类型所在程序集中的服务接口(必需有标记HttpMethod特性)
 /// </summary>
 /// <typeparam name="TWebApiProxy">应契约接口的WebApiProxy配置对象类型,会自动注册该文件所在程序集中的服务接口(必需有标记HttpMethod特性)</typeparam>
 /// <param name="baseUrl">服务器地址,不填时需要在契约接口标记HttpHost特性</param>
 public void AddWebApiProxy <TWebApiProxy>(string baseUrl = null) where TWebApiProxy : WebApiProxy
 {
     if (Activator.CreateInstance(typeof(TWebApiProxy), baseUrl) is WebApiProxy proxy)
     {
         WebApiProxies.Add(proxy);
     }
 }
예제 #2
0
        /// <summary>
        /// 使用对象类型注册Http请求服务,会自动注册该对象类型所在程序集中的服务接口(必需有标记HttpMethod特性)
        /// </summary>
        /// <param name="webApiProxyType">应契约接口的WebApiProxy配置对象类型,会自动注册该文件所在程序集中的服务接口(必需有标记HttpMethod特性)</param>
        /// <param name="baseUrl">服务器地址,不填时需要在契约接口标记HttpHost特性</param>
        public void AddWebApiProxy(Type webApiProxyType, string baseUrl = null)
        {
            if (!typeof(WebApiProxy).IsAssignableFrom(webApiProxyType))
            {
                throw new Exception("不是WebApiProxy的子类");
            }

            if (Activator.CreateInstance(webApiProxyType, baseUrl) is WebApiProxy proxy)
            {
                WebApiProxies.Add(proxy);
            }
        }