«TimeoutException: исключение при чтении из потока во время «обновления базы данных dotnet ef» с использованием Npgsql сC#

Место общения программистов C#
Anonymous
«TimeoutException: исключение при чтении из потока во время «обновления базы данных dotnet ef» с использованием Npgsql с

Сообщение Anonymous »

Я пытаюсь обновить базу данных PostgreSQL с помощью Entity Framework Core в приложении .NET. Однако когда я запускаю команду обновления базы данных dotnet ef, я получаю TimeoutException со следующей трассировкой стека.
Сообщение об ошибке и трассировка стека:

Сборка началась...
Сборка выполнена успешно.
Npgsql.NpgsqlException (0x80004005): Исключение при чтении из потока
--- > System.TimeoutException: таймаут при попытке чтения
в Npgsql.Internal.NpgsqlReadBuffer.g__EnsureLong|55_0(буфер NpgsqlReadBuffer, счетчик Int32, логическое асинхронное значение, логическое чтение уведомлений)
в System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1 .StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(токен Int16)
в Npgsql.Internal.NpgsqlConnector.RawOpen(SslMode sslMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancelToken, Boolean isFirstAttempt)
at Npgsql.Internal.NpgsqlConnector.g__OpenCore|213_1(NpgsqlConnector conn, SslMode sslMode, таймаут NpgsqlTimeout, Boolean async, CancellationToken cancelToken, Boolean isFirstAttempt)
at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, асинхронный, CancellationToken cancelToken)
в Npgsql.UnpooledDataSource.Get(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancelToken)
в Npgsql.NpgsqlConnection.g__OpenAsync|42_0(Boolean async, CancellationToken cancelToken)
в Npgsql.NpgsqlConnection.Open()
в Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorExpected)
в Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorExpected)
в Microsoft. EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorExpected)
в Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlDatabaseCreator.Exists(Boolean async, CancellationToken cancelToken)
в Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal .NpgsqlDatabaseCreator.Exists(Boolean async, CancellationToken cancelToken)
в Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlDatabaseCreator.Exists()
в Microsoft.EntityFrameworkCore.Migrations.HistoryRepository.Exists()
в Microsoft.EntityFrameworkCore.Migrations.HistoryRepository.GetAppliedMigrations()
в Npgsql.EntityFrameworkCore.PostgreSQL.Migrations.Internal.NpgsqlMigrator.Migrate(String targetMigration)
в Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations. UpdateDatabase(String targetMigration, String ConnectionString, String contextType)
в Microsoft.EntityFrameworkCore.Design.OperationExecutor.UpdateDatabaseImpl(String targetMigration, String ConnectionString, String contextType)
в Microsoft.EntityFrameworkCore.Design.OperationExecutor.UpdateDatabase. c__DisplayClass0_0.b__0()
в Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)
Исключение при чтении из потока

Код Пример строки подключения:

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

{
"ConnectionStrings": {
"DefaultConnection" : "Host=MyIP; Port=6060; Database=test; Username=user; Password=password;"

},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}
Версии, которые я использую:
  • PostgreSQL: 15.7
  • Npgsql. EntityFrameworkCore.PostgreSQL: 8.0.10
  • . Версия .NET SDK: 8.0.403
  • ОС: Windows 10
    < /ul>
    Что я пробовал:
  • Проверил строку подключения – кажется, правильно.
    < li>Проверил сервер PostgreSQL — он отвечает. [Хотя при использовании команды «ping MyIP» отображается «Тайм-аут запроса», я попробовал с помощью «Test-NetConnection (PowerShell)», и он показал «TcpTestSucceeded: True», так что, думаю, проблем с сетью нет]
  • Настройки SSL – пробовали как с SSL, так и без него.
  • Увеличенное время ожидания команды – пробовал CommandTimeout=300 в строке подключения.


Подробнее здесь: https://stackoverflow.com/questions/791 ... ef-databas

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