Несколько активных операций БД во время ожидания Foreach dbset.asasyncenumerable () цикл разрешен в том же контексте?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Несколько активных операций БД во время ожидания Foreach dbset.asasyncenumerable () цикл разрешен в том же контексте?

Сообщение Anonymous »

Я разрешен выполнять 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
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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