Я разрешен выполнять SaveChanges во время активного цикла над iaSyncenumerable из dbset ?
api замечания " Тот же экземпляр контекста не поддерживается. P> Но я не уверен, что откровенное значение IAsyncenumerable считается активной операцией.
Я должен использовать еще один dbcontext для сохранения маркера состояния? < /p>
while(!cancellationToken.IsCancellationRequested)
{
await using var scope = serviceScopeFactory.CreateAsyncScope();
var db = scope.ServiceProvider.GetRequiredService();
await foreach(var o in db.Orders
.Where(o => o.Status != 1) // and some other conditions
.AsAsyncEnumerable()
.WithCancellation(cancellationToken)
.ConfigureAwait(false))
{
o.Status = 1;
await db.SaveChangesAsync(cancellationToken);
// run fire and forget async work once
}
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... erable-loo
Несколько активных операций БД во время ожидания Foreach dbset.asasyncenumerable () цикл разрешен в том же контексте? ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
IEnumerable.Select() внутри DbSet<>.Include() вместо DbSet<>.IncludeThen() в EF Core 8
Anonymous » » в форуме C# - 0 Ответы
- 49 Просмотры
-
Последнее сообщение Anonymous
-