Тайм -ауты предприятияC#

Место общения программистов C#
Ответить
Anonymous
 Тайм -ауты предприятия

Сообщение Anonymous »

Я получаю тайм -ауты, используя структуру объекта (EF) при использовании импорта функции, который занимает более 30 секунд. Я попробовал следующее и не смог решить эту проблему: < /p>

Я добавил время -аут команды по умолчанию = 300000 < /code> в строку подключения в файле app.config < /em> в проекте, который имеет файл EDMX, как предложено здесь. class = "lang-xml prettyprint-override">

Код: Выделить всё

< /code>

Я попытался установить CommandTimeout в моем репозитории напрямую как SO: < /p>

private TrekEntities context = new TrekEntities();

public IEnumerable GetKirksFriends()
{
this.context.CommandTimeout = 180;
return this.context.GetKirksFriends();
}
< /code>

Что еще я могу сделать, чтобы получить EF от времени? Это происходит только для очень больших наборов данных. Все работает нормально с небольшими наборами данных. Смотрите внутреннее исключение для деталей. ---> System.Data.sqlclient.sqlexception: Тайм-аут истек.  Период времени ожидания, прошедший до завершения операции, или сервер не реагирует. У меня была как строка подключения с временем аутсаума по умолчанию = 300000 
, и CommandTimeout устанавливается на 180. Когда я снял тайм -аут команды по умолчанию из строки подключения, это сработало. Таким образом, ответ состоит в том, чтобы вручную установить командное время в вашем репозитории в вашем контекстном объекте как SO: < /p>

this.context.CommandTimeout = 180;
< /code>

Очевидно, настройка настроек тайм -аута в строке подключения не влияет на него. < /p>

Подробнее здесь: https://stackoverflow.com/questions/623 ... k-timeouts
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»