/// <inheritdoc/> public ClientBase Get(Type type, string host, int port) { ThrowIfTypeDoesNotImplementClientBase(type); var constructor = type.GetConstructor(new[] { typeof(ChannelBase) }); ThrowIfMissingExpectedConstructorClientType(type, constructor); return(constructor.Invoke(new[] { _channels.GetFor(host, port) }) as ClientBase); }