«WCF Service не может быть использована для связи, поскольку он находится в поврежденном состоянии»Где закрыть соединение WCF службы в MVC
Я получил эту ошибку и причина в том, что я не будучи закрывая подключения к службам WCF , Через некоторое время система выдаст эту ошибку. Может быть, когда открывается слишком много подключений, это дает ошибку.
public void CloseChannels()
{
bool success = false;
foreach (ChannelFactory li in factoryList)
{
try
{
if (li.State == CommunicationState.Opened)
li.Close();
li.ToString()));
success = true;
}
catch (Exception ex)
{
Helpers.Logger.Log.Error("Could not close connection for the service",ex);
}
finally
{
if (!success)
{
if (li.State == CommunicationState.Opened)
li.Abort();
}
}
}
}
Я должен называть это для каждого каждого вызова службы, чтобы убедиться, что соединение закрыто. Есть ли глобальное место в ASP.NET MVC, где я могу назвать это? (например, в веб-формах ASP.NET у нас было событие OnUnload страницы)
Как насчет блока 'using' всякий раз, когда вы используете канал? – TGlatzer