/// <summary> /// 获取CallInvoker /// </summary> /// <returns></returns> private ClientCallInvoker GetCallInvoker(string configPath = "") { var exitus = StrategyFactory.Get <T>(GetConfigPath(configPath)); var callInvoker = new ClientCallInvoker(exitus.EndpointStrategy, exitus.ServiceName, exitus.MaxRetry, _tracer, _interceptors); return(callInvoker); }
/// <summary> /// 构造实例 /// </summary> /// <typeparam name="T"></typeparam> /// <returns></returns> public T Get(Func <List <ServerCallInvoker>, ServerCallInvoker> callInvokers = null) { var exitus = StrategyFactory.Get <T>(_options); var callInvoker = new ClientCallInvoker(_options, exitus.EndpointStrategy, callInvokers); var client = (T)Activator.CreateInstance(typeof(T), callInvoker); return(client); }