SORU
8 EKİM 2008, ÇARŞAMBA


Nasıl bir "" değil; SERİ ile sorgu misin?

Özelliği olan iki koleksiyon var her iki koleksiyon Email. Email ikinci listede mevcut değil ilk listedeki öğelerin bir listesini almak istiyorum. SQL ile sadece "değil", ama ben ETMENİZ. eşdeğer bilmiyorum kullanırdım Bu nasıl yapılır?

Şimdiye kadar katılmak zorundayım

var matches = from item1 in list1
join item2 in list2 on item1.Email equals item2.Email
select new { Email = list1.Email };

Ama fark ihtiyacım var beri katılamam ve başarısız katılır. İçerir kullanarak bir yol bulmalıyım ya da inanıyorum Var. Ben sadece henüz bunu yapmak için bir örnek bulamadım.

CEVAP
8 EKİM 2008, ÇARŞAMBA


Operatör Dışında istediğiniz.

var answer = list1.Except(list2);

Daha iyi açıklama burada: http://blogs.msdn.com/charlie/archive/2008/07/12/the-linq-set-operators.aspx

NOT:Bu teknik, karmaşık türleri Dışında bir yöntem kullanmak için bir iEqualityComparor uygulamak zorunda beri en ilkel türler için yalnızca çalışır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Howard Pinsky

    Howard Pinsk

    6 AĞUSTOS 2006
  • LearnKey

    LearnKey

    19 AĞUSTOS 2008
  • MrOctopi

    MrOctopi

    6 Aralık 2010