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

  • Caramthros

    Caramthros

    10 AĞUSTOS 2007
  • Michelle Phan

    Michelle Pha

    18 Temmuz 2006
  • WhtButterflyLiz

    WhtButterfly

    14 NİSAN 2008