SORU
14 EKİM 2009, ÇARŞAMBA


SERİ: "içerir" ve Lambda sorgu

Ben bir liste içerir çeteleler, standart bir Numaralama ama vardır bir nitelik bağlıdır ve bir uzantısı yöntemi döndürür bir CHAR numaralama (aşağıya bakınız - GetCharValue), uzatma harika çalışıyor.

Ben şimdi etmeniz için bir uzantısı yöntemi)

public static IQueryable<Building> WithStatus(this IQueryable<Building> qry, 
         IList<BuildingStatuses> buildingStatus)
{
    return from v in qry
           where buildingStatus.Where(item => item.GetCharValue() == 
           v.Status)
           select v;
}

Ben temelde şunu "" sorguda her şeyi ama v. Durum buildingStatus... ama buildingStatus unutma sadece çeteleler ben . yani bir ILİST. İade etmek lazım ^em>GEREKİRçağrı GetCharValue.

Daha önce doğru sözdizimi bence vardı yardım aldım biraz

buildingStatus.Contains (v.Status)   

ama sorun buildingStatus GetCharValue aramalıyım yani Çeteleler bir Ilist burada() demeden önce Ilist her bir Madde İçerir..

Bir şey lambda gibi İçerir kullanarak bunu yapmanın özel bir yolu olduğunu düşünüyordum - tabii ki işe yaramıyor

where buildingStatus.Contains(item => item.GetCharValue() == v.Status)

Herkes yardımcı olabilir?

CEVAP
14 EKİM 2009, ÇARŞAMBA


İçerir yerine 9* *kullanın:

buildingStatus.Any(item => item.GetCharValue() == v.Status)

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CNNMoney

    CNNMoney

    16 Kasım 2006
  • H3Ctic (old channel)

    H3Ctic (old

    23 Mart 2011
  • pucksz

    pucksz

    24 Mart 2006