static async Task <T> CreateProxy(Socket socket, string server, int port, ChannelConfig config, bool open) { if (ProxyType == null) { ProxyType = CreateProxyType(); } var channelManager = new ChannelManager(Contract, config); InnerProxy innerProxy = null; if (socket == null) { innerProxy = new InnerProxy(server, port, channelManager); } else { innerProxy = new InnerProxy(socket, channelManager); } var proxy = Activator.CreateInstance(ProxyType, innerProxy); if (open) { await((IClientChannel)proxy).Open(); } return((T)proxy); }
public ClientChannel(string server, int port, ChannelConfig config) { this._InnerProxy = new InnerProxy <T>(server, port, config); this._IdProvider = Global.IdProvider; this._contract = typeof(T).FullName; }