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

  • aki6336

    aki6336

    14 AĞUSTOS 2008
  • Jabari Johnson

    Jabari Johns

    18 Ocak 2008
  • NLthomas21

    NLthomas21

    20 Mayıs 2008