Если вы создаете прокси-сервер для службы WCF, прокси-сервер фактически является ClientBase
Пример из моего приложения:
public class DataClient : ClientBase<Classes.IDataService>, Classes.IDataService
{
public DataClient(string connectToHost)
: base(new NetTcpBinding(SecurityMode.Transport)
{
PortSharingEnabled = true,
Security = new NetTcpSecurity()
{
Transport = new TcpTransportSecurity()
{
ClientCredentialType = TcpClientCredentialType.Windows
}
}
},
new EndpointAddress(string.Format("net.tcp://{0}:5555/MyService",connectToHost)))
{ }
#region IDataService Members
public Classes.Folder GetFolder(string entryID)
{
return Channel.GetFolder(entryID);
}
public Classes.IItem GetItem(string entryID)
{
return Channel.GetItem(entryID);
}
#endregion
}
РЕДАКТИРОВАТЬ В соответствии с вашим запросом, я гуглилбит и найдено this :
Реализация ICommunicationObject.Open ()
Это привело к this :
CommunicationException
Не удалось открыть объект ICommunicationObject, и он вошел в состояние «Сбой».
TimeoutException
Истекло время ожидания по умолчанию до того, как объект ICommunicationObject смогвойдите в открытое состояние и вошли в состояние Failed.
Кроме того, за опыт и то, что я встречал в сети, не закрывая ваших клиентов, может вызвать различные формы странности, и поэтомуобычно считается " Плохая вещь ".