- 単一のクエリで複数のレコードを更新する方法:
using (var context = new YourDbContext())
{
var recordsToUpdate = context.YourEntity.Where(e => e.Condition == true).ToList();
foreach (var record in recordsToUpdate)
{
record.Property1 = newValue1;
record.Property2 = newValue2;
// 必要なプロパティを更新する
}
context.SaveChanges();
}
- バルク操作を使用して複数のレコードを更新する方法:
using (var context = new YourDbContext())
{
var recordsToUpdate = context.YourEntity.Where(e => e.Condition == true).ToList();
foreach (var record in recordsToUpdate)
{
record.Property1 = newValue1;
record.Property2 = newValue2;
// 必要なプロパティを更新する
context.Entry(record).State = EntityState.Modified;
}
context.SaveChanges();
}
- SQLクエリを使用して複数のレコードを一括更新する方法:
using (var context = new YourDbContext())
{
var sqlQuery = "UPDATE YourTable SET Property1 = @newValue1, Property2 = @newValue2 WHERE Condition = @condition";
var parameters = new List<SqlParameter>
{
new SqlParameter("@newValue1", newValue1),
new SqlParameter("@newValue2", newValue2),
new SqlParameter("@condition", true)
};
context.Database.ExecuteSqlCommand(sqlQuery, parameters.ToArray());
}
これらは、Entity Frameworkを使用して複数のレコードを更新するいくつかの一般的な方法です。状況に応じて最適な方法を選択してください。また、自分のデータベースとエンティティに合わせてコードをカスタマイズする必要があります。