private void OnServiceDiscovered(object sender, ResonanceDiscoveredServiceEventArgs <ResonanceSignalRDiscoveredService <DemoServiceInformation>, DemoServiceInformation> e) { InvokeUI(() => { RegisteredServices.Add(e.DiscoveredService.DiscoveryInfo); }); }
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))); }