SORU
23 Temmuz 2010, Cuma


Sözlük listesi etmeniz kullanarak ve çoğaltır endişesi değil dönüştürmek

Kişi nesneleri bir listesi var. Anahtar adı ve soyadı () birleştirilmiş olduğu bir Sözlük dönüştürmek istiyorum ve değerdir Kişi nesne.

Sorun bu ise bu kodu kullanırsam darbeler kadar çok insan çoğaltılamaz, var:

private Dictionary<string, Person> _people = new Dictionary<string, Person>();

_people = personList.ToDictionary(
    e => e.FirstandLastName,
    StringComparer.OrdinalIgnoreCase);

Kulağa garip geliyor biliyorum ama gerçekten şimdilik çiftleri isimler umurumda değil. Eğer birden fazla isim varsa ben orada sadece bir tane al. Sadece adlarını alır ve çoğaltır üzerinde patlamaz yani bu kod yukarıda yazabilirim zaten var mı?

CEVAP
23 Temmuz 2010, Cuma


var _people = personList
    .GroupBy(p => p.FirstandLastName, StringComparer.OrdinalIgnoreCase)
    .ToDictionary(g => g.Key, g => g.First(), StringComparer.OrdinalIgnoreCase);

Eğer olmayan SERİ bir çözüm o zaman isterseniz şöyle bir şey yapabilirsin:

var _people = new Dictionary<string, Person>(StringComparer.OrdinalIgnoreCase);
foreach (var p in personList)
{
    _people[p.FirstandLastName] = p;
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • mist64

    mist64

    30 Mayıs 2006
  • sdasmarchives

    sdasmarchive

    2 HAZİRAN 2010
  • SuicideSheeep

    SuicideSheee

    8 Ocak 2012