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

  • Digital Bounds

    Digital Boun

    19 Temmuz 2013
  • psidot

    psidot

    2 Kasım 2006
  • Sam Kear

    Sam Kear

    14 Temmuz 2007