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

  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • mobilenet.cz

    mobilenet.cz

    26 NİSAN 2008
  • XxMinayaxX1

    XxMinayaxX1

    9 Mayıs 2012