Я работаю над обновлением приложения ASP.NET 5 RC1 для ядра ASP.NET 1. Я успешно обновил его, заменив пакеты (AspNet на AspNetCore) и изменив их с EF7 на EF Core (Microsoft.Data.Entity для Microsoft.EntityFrameworkCore).ASP.NET Core SQL Connection TImeout
Проблема, с которой я сталкиваюсь, представляет собой прерывистое исключение SqlException для таймаута соединения.
Вот полное исключение:
System.Data.SqlClient.SqlException occurred.
Class=11 ErrorCode=-2146232060 HResult=-2146232060 LineNumber=0
**Message=Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement. This could be because the pre-login handshake failed or the server was unable to respond back in time. The duration spent while attempting to connect to this server was - [Pre-Login] initialization=924; handshake=6;**
Number=-2
Procedure=""
Server=(localdb)\mssqllocaldb
Source=.Net SqlClient Data Provider
State=0
StackTrace:
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
Я попытался увеличивая время ожидания команды, как так:
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options)
{
this.Database.SetCommandTimeout(120);
}
Исключения брошенного на этой линии, но когда я закомментировать это будет происходит в другом месте, что заставляет меня думать, что это происходит при первом доступе к базе данных.
app.ApplicationServices.GetService<ApplicationDbContext>().Database.Migrate();
Теперь нет вопроса или что? после этого 'this.Database.SetCommandTimeout (120);' – Sampath
Проблема все еще происходит даже после добавления тайм-аута. –