示例#1
0
 private void OnServiceDiscovered(object sender, ResonanceDiscoveredServiceEventArgs <ResonanceSignalRDiscoveredService <DemoServiceInformation>, DemoServiceInformation> e)
 {
     InvokeUI(() =>
     {
         RegisteredServices.Add(e.DiscoveredService.DiscoveryInfo);
     });
 }
示例#2
0
 public static void Register <T>(string serviceName, T obj)
 {
     if (RegisteredServices.ContainsKey(serviceName))
     {
         throw new Exception($"Service {serviceName} has already been registered.");
     }
     RegisteredServices.Add(serviceName, obj);
 }
        /// <summary>
        /// 使用契约接口注册Http请求服务
        /// </summary>
        /// <typeparam name="TService">契约接口类型</typeparam>
        /// <param name="baseUrl">服务器地址,不填时需要在契约接口标记HttpHost特性</param>
        public void AddService <TService>(string baseUrl = null)
        {
            if (!typeof(TService).IsInterface)
            {
                throw new ArgumentOutOfRangeException($"{typeof(TService).Name} is not a interface.");
            }

            RegisteredServices.Add(new KeyValuePair <string, Type>(baseUrl, typeof(TService)));
        }