ASP.NET C#

DataTable belirli satırları silme

Db den gelen veriyi dataTable nesnesine yüklediniz ama içlerinden bazı kayıtları kullanıcıya göstermemeniz gerekiyorsa bu kodu kendinize göre uyarlayıp kullanabilirsiniz..

Db den gelen veriyi dataTable nesnesine yüklediniz ama içlerinden bazı kayıtları kullanıcıya göstermemeniz gerekiyorsa bu kodu kendinize göre uyarlayıp kullanabilirsiniz.. 

Örnek olarak bir uygulamada mağaza listesi düşünelim, bir sayfada mağazaların bilgilerinin olduğu sayfa olsun, diğer sayfada da fiş girişi ekranı olsun, fiş giriş ekranında hangi mağazadan alışveriş yapıldığını seçtirmek için dropdown nesnesine mağaza adlarını yüklensin ve her iki sayfa içinde mağaza bilgilerini aynı tablodan çektiğimizi farzedelim. Bazı mağazaların fiş giriş ekranında gözükmemesi istenebilir, bunun için veritabanında yeni bir tablo açmak yerine o tablodan gelen ve dropdownlistten silmek istediğimiz mağaza id’lerini list objesine yazmalıyız;

List<int> lstRemoveColumns = new List<int>() { "istenmeye ID'ler" };
Datatable satırında  istenmeyen id bulunursa o satır silinecek demektir, 

bunun için datarow tipinde bir list oluşturmalıyız,

 List<DataRow> rowsToDelete = new List<DataRow>();
amacımız döngülerle istenmeyen satırı silmek;
 List<int> lstRemoveColumns = new List<int>() { "istenmeye ID'ler" };

    List<DataRow> rowsToDelete = new List<DataRow>();

        foreach (DataRow row in tblMagaza?.Rows)

        {

            if (lstRemoveColumns.Contains(Convert.ToInt32(row["ID"])))

            {

                rowsToDelete.Add(row);

            }

        }

        foreach (DataRow row in rowsToDelete)

        {

            tblMagaza.Rows.Remove(row);

        }

        tblMagaza.AcceptChanges();

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir