Могу ли я устранить этот цикл for с помощью вызова ExecuteUpdate в EF Core?C#

Место общения программистов C#
Anonymous
Могу ли я устранить этот цикл for с помощью вызова ExecuteUpdate в EF Core?

Сообщение Anonymous »

У меня есть вызов ExecuteUpdate ниже внутри цикла for, и я хочу знать, можно ли исключить цикл for? Я знаю, что могу использовать список в предложенииwhere для всех идентификаторов пользователей, но не уверен насчет SetProperty
foreach (var registrant in yogabandEvent.Registrants)
{
result = await _dbContext.Users
.Where(p => p.Id == registrant.UserId)
.ExecuteUpdateAsync(setters => setters
.SetProperty(p => p.Attended, registrant.RegistrantType == RegistrantType.Student ? p => p.Attended + 1 : p => p.Attended)
.SetProperty(p => p.Hosted, (registrant.RegistrantType == RegistrantType.Host || registrant.RegistrantType == RegistrantType.HostInstructor) ? p => p.Hosted + 1 : p => p.Hosted)
.SetProperty(p => p.Instructed, registrant.RegistrantType == RegistrantType.Instructor ? p => p.Instructed + 1 : p => p.Instructed)
);
}


Подробнее здесь: https://stackoverflow.com/questions/788 ... in-ef-core

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