SORU
12 NİSAN 2011, Salı


SERİ: nesne listeden öğeleri içermeyen Seçin

SERİ sözdizimi buraya...buraya atmak istedim ile mücadele ediyorum. I cant tam olarak başka bir yerde arıyorum.

TAMAM, bu var dediler

public class Bar
{
   public int BarId { get; set; }
}

public class Foo
{
   public List<Bar> BarList { get; set; }
}

List<Foo> fooBunch = GetABunchOfFoos(); //let's just assume I'm getting more than one
List<Foo> fooSelect = new List<Foo>;
List<Bar> filterBars = GetAFewBars(); //assume I'm getting like 2 or 3

fooSelect = (from f in fooBunch
             where !(from b in f.BarList select b.BarId).Contains(ITEM FROM filterBars.BarId)
             select f).ToList();

Uzun lafın ETMENİZ nesneleri başka nesneler listesinden dayalı bir listesini filtrelemek için kullanmak istiyorum kısa. Bu mantıklı umuyoruz. Sadece İçeren bölümü kayboldum sanırım...bunu nasıl yazacağımı bilmiyorum.

CEVAP
12 NİSAN 2011, Salı


Genel olarak, "" uzantısı. Hariç arıyorsunuz

var rejectStatus = GenerateRejectStatuses();
var fullList = GenerateFullList();
var rejectList = fullList.Where(i => rejectStatus.Contains(i.Status));
var filteredList = fullList.Except(rejectList);

Bu örnekte, GenerateRegectStatuses() reddetmek istediğiniz durumları (veya daha somut örnek, Kimlikleri List<int> dayalı) listesi olması gerekir

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Damien Walters

    Damien Walte

    20 AĞUSTOS 2006
  • FlippinWindows | #1 Windows Tutorial Channel!

    FlippinWindo

    23 Mayıs 2010
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007