Можете ли вы показать нам, когда вы пытаетесь позвонить client.SomeMethod()
?
Я не вижу, чего вы пытаетесь достичь с помощью client.Open()
здесь ....., который на самом деле не имеет никакого смысла - просто вызовите метод, который вы хотите вызвать!
try
{
var client = new <WCFClient>("NetTcpBindingEndpoint", ConfigurationManager.AppSettings["ServiceEndPointAddress"]);
client.SomeMethod();
client.Close();
}
catch(FaultException<T> exc)
{
// handle it
client.Abort();
}
catch(CommunicationException exc)
{
// handle it
client.Abort();
}
catch(EndpointNotFoundException exc)
{
// handle it
client.Abort();
}
catch(TimeoutException exc)
{
// handle it
client.Abort();
}
и, возможно, добавьте немного магии try.....catch
, чтобы сделать его более безопасным ... но это действительно все, что вам нужно - нет необходимости сначала .Open()
клиента .....