Возможно ли обновлять объекты с помощью Entity Framework, не захватывая их сначала?Обновить объект без выбора EF6 MySQL
Пример: Здесь у меня есть функция, которая предоставляет первичный ключ для поиска объектов, их вытягивает, а затем обновляет. Я хотел бы исключить необходимость сначала перенести объекты и просто запустить запрос UPDATE. Удаление необходимости генерации запроса SELECT.
public async Task<int> UpdateChecks(long? acctId, string payorname, string checkaccountnumber, string checkroutingnumber, string checkaccounttype)
{
using (var max = new Max(_max.ConnectionString))
{
var payments = await
max.payments.Where(
w =>
w.maindatabaseid == acctId && (w.paymentstatus == "PENDING" || w.paymentstatus == "HOLD")).ToListAsync();
payments.AsParallel().ForAll(payment =>
{
payment.payorname = payorname;
payment.checkaccountnumber = checkaccountnumber;
payment.checkroutingnumber = checkroutingnumber;
payment.checkaccounttype = checkaccounttype;
payment.paymentmethod = "CHECK";
payment.paymentstatus = "HOLD";
});
await max.SaveChangesAsync();
return payments.Count;
}
}
Я не думаю, что это возможно без использования какой-либо сторонней библиотеки. – sstan
Вы можете посмотреть: [Расширенная библиотека Entity Framework] (https://github.com/loresoft/EntityFramework.Extended). Согласно их странице, он делает именно то, что вы ищете. Но я никогда не пробовал себя с последними версиями EF6, поэтому я не знаю, насколько это хорошо работает. – sstan
Duplicate: http://stackoverflow.com/questions/4218566/update-a-record-without-first-querying –