public WebReturn SendMessage(WebRequest webRequest, string clientID, bool isToServer) { WebReturn webReturn = new WebReturn(); string url; if (isToServer) { url = string.Format("net.pipe://localhost/UMPServer"); } else { url = string.Format("net.pipe://localhost/Client_{0}", clientID); } NetNamedPipeBinding binding = new NetNamedPipeBinding(); binding.MaxReceivedMessageSize = int.MaxValue; binding.MaxBufferPoolSize = int.MaxValue; binding.MaxBufferSize = int.MaxValue; XmlDictionaryReaderQuotas quotas = new XmlDictionaryReaderQuotas(); quotas.MaxArrayLength = int.MaxValue; quotas.MaxStringContentLength = int.MaxValue; binding.ReaderQuotas = quotas; ChannelFactory <IMessageHandler> factory = new ChannelFactory <IMessageHandler>(binding, new EndpointAddress(url)); IMessageHandler handler = factory.CreateChannel(); try { return(handler.DealMessage(webRequest)); } catch (Exception ex) { webReturn.Result = false; webReturn.Code = 1; webReturn.Message = ex.Message; return(webReturn); } }