SORU
15 Aralık 2009, Salı


başka kullanarak lambda ifade için bir tür nesnelerin listesini dönüştürmek

Foreach döngüsü bir tür nesnelerin listesini okuma ve farklı bir tür nesnelerin listesini elde ediyorum. Lambda ifade aynı sonucu elde edebileceği söylendi.

var origList = List<OrigType>(); // assume populated
var targetList = List<TargetType>(); 

foreach(OrigType a in origList) {
    targetList.Add(new TargetType() {SomeValue = a.SomeValue});
}

Herhangi bir yardım takdir - lambda ve seri yeniyim olurdu teşekkürler s

CEVAP
15 Aralık 2009, Salı


EğerbiliyorumList<T2> List<T1> dönüştürmek istediğiniz List<T>.ConvertAll tam boyut ile başlamak bildiği için* Select/*7 daha verimli olacaktır:

target = orig.ConvertAll(x => new TargetType { SomeValue = x.SomeValue });

Sadece 10*/ToList *** 9, bir kullanarak kaynağını merak ettiğinde daha genel durumda gitmek yoludur. Sanaolabilirayrıca SERİ bir dünyada, daha deyimsel başlamak savunuyorlar. ama en azından ConvertAll seçeneği farkında olmaya değer.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • hotstrikegently

    hotstrikegen

    26 AĞUSTOS 2011
  • krotoflik

    krotoflik

    26 ŞUBAT 2011
  • olinerd

    olinerd

    23 AĞUSTOS 2007