Linq İle Any Metodu Kullanımı

28.07.2014 Hikmet Okumuş 7348 0 Linq & Lambda


Any metodu, bir koleksiyonda belirtilen koşula uygun kayıt varsa geriye true, yoksa false değerini döndürmektetedir. Örnek olarak aşağıdaki objeyi kullanalım.
    public class Kisi
    {
        public Kisi() { }
        public Kisi(string Ad, int Yas, bool Durum)
        {
            this.Ad = Ad;
            this.Yas = Yas;
            this.Durum = Durum;
        }

        public string Ad { get; set; }
        public int Yas { get; set; }
        public bool Durum { get; set; }
    }
Aşağıdaki gibi liste içerisine elemanları ekliyoruz.
        static void Main(string[] args)
        {
            List Kisiler = new List< Kisi>();
            Kisiler.Add(new Kisi("Ali", 15, true));
            Kisiler.Add(new Kisi("Can", 22, true));
            Kisiler.Add(new Kisi("Hakan", 19, false));
            Kisiler.Add(new Kisi("Yılmaz", 41, true));
            Kisiler.Add(new Kisi("Ahmet", 25, true));
            Kisiler.Add(new Kisi("Veli", 17, true));

            Console.Read();
        }
Liste içerisinde Durum değeri false olan bir adet kayıt bulunmaktadır. Any metodunun tanımını yaparken, koleksiyon içerisinde koşulumuza uygun bir ya da birden fazla kayıt varsa geriye true değerini döndürdüğünü belirtmiştik. Şimdi uygulama üzerinde test edelim.
        static void Main(string[] args)
        {
            List Kisiler = new List< Kisi>();
            Kisiler.Add(new Kisi("Ali", 15, true));
            Kisiler.Add(new Kisi("Can", 22, true));
            Kisiler.Add(new Kisi("Hakan", 19, false));
            Kisiler.Add(new Kisi("Yılmaz", 41, true));
            Kisiler.Add(new Kisi("Ahmet", 25, true));
            Kisiler.Add(new Kisi("Veli", 17, true));

            var sonuc = Kisiler.Any(x => x.Durum == false);
            Console.WriteLine(sonuc.ToString());
            Console.Read();
        }

www.hikmetokumus.com

Koşulumuza uyan bir adet kayıt olduğu için True değerini elde ettik. Şimdi koleksiyon içerisinde koşulumuza karşılık gelmeyecek bir örnek ile test edelim.
        static void Main(string[] args)
        {
            List Kisiler = new List< Kisi>();
            Kisiler.Add(new Kisi("Ali", 15, true));
            Kisiler.Add(new Kisi("Can", 22, true));
            Kisiler.Add(new Kisi("Hakan", 19, false));
            Kisiler.Add(new Kisi("Yılmaz", 41, true));
            Kisiler.Add(new Kisi("Ahmet", 25, true));
            Kisiler.Add(new Kisi("Veli", 17, true));

            var sonuc = Kisiler.Any(x => x.Durum == true && x.Yas < 10);
            Console.WriteLine(sonuc.ToString());
            Console.Read();
        }

www.hikmetokumus.com

Bu işlem sonucunda da kritere uyan bir kayıt olmadığı için False değerini elde ettik.

Başarılar dilerim.




Yorum