Ne arayalım?

ARAMIZA KATILIN

BİZE ULAŞIN

Adres:

E-posta:

host/bin/bilisimlife.dll

iletisim@bilisimlife.net

Entity Framework Çoklu Işlemler 54415441 okunma

05.11.2018

Programlama

Rserit

Entity Framework ile işlemler yaparken birden fazla satır işlemleri yapmak isteyebiliriz. Bunun için birçok metod bulunuyor. Silme ve güncelleme işlemleri için farklı metodlara değineceğiz.  Ihtiyaca göre EF'nin yeni sürümlerinde farklı metodlar görüyoruz. Hepsi pratik işlemler.

Çoklu veri silme işlemi: RemoveRange

Kullanımı son derece kolay. Örnek:

db.Instructors.RemoveRange(db.Instructors.Where(x => x.FullName == "Recep Şerit"));
db.SaveChanges();



Çoklu veri silme işlemi için alternatif: ForEach ve DeleteObject
Örnek:

db.Instructors.Where(w => w.FullName == "Recep Şerit").ToList().ForEach(db.Instructors.DeleteObject);
db.SaveChanges();

Özetle, önce koşula göre listeliyor, ardından ForEach metoduyla bir döngüye dahil ediliyor, her bir objeyi de siliyor.

Çoklu kayıt güncelleme: ForEach döngüsü

Örnek:
db.Instructors.Where(x => x.FullName == "Recep").ToList().ForEach(x => x.FullName = "Richard");
db.SaveChanges();



Bu işlemi döngü içinde de yapabilirsiniz. Şöyle ki:

foreach (var k in db.Instructors.Where(x=> x.FullName == "Recep").ToList())
{
k.FullName = "Richard"
}
db.SaveChanges();

Çoklu işlemler için en iyi alternatif: ExecuteStoreCommand

Metodumuz veritabanı tarafından SQL sorgusuyla işlem yapıyor. Bu metodla da güncelleme, silme gibi işlemler yapılabilir. 

Örnek:

string Name = "Recep";
DB.ExecuteStoreCommand("DELETE FROM Instructors WHERE FullName = {0}", Name);

Umarım faydalı olur.

Recep ŞERIT

BİR YORUM YAZIN