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

  • GoProTutorials

    GoProTutoria

    18 NİSAN 2011
  • Hak5

    Hak5

    7 EYLÜL 2005
  • steven johns

    steven johns

    11 Mart 2011