2016-10-11 11 views
0

enter image description here Ich habe Class mit Eigenschaften von String und List<String>. Ich möchte dies List<Class> in eine Dictionary<String, List<String>> konvertieren, aber ich konnte dies nicht tun. Wie List<Class> direkt an einen Dictionary?Wie konvertiert man die Liste <Class> in Dictionary <string, Liste <String>> in C#?

public class SerializationClass 
{ 
    string key; 
    List<string> values; 

    public SerializationClass() 
    { 

    } 
    public string Key 
    { 
     get 
     { 
      return this.key; 
     } 
     set 
     { 
      this.key = value; 
     } 
    } 

    public List<string> Values 
    { 
     get 
     { 
      return this.values; 
     } 
     set 
     { 
      this.values = value; 
     } 
    } 

    public SerializationClass(string _key, List<string> _values) 
    { 
     this.Key = _key; 
     this.Values = _values; 
    } 
} 

Und die Bevölkerung der Liste zu konvertieren ist,

List<SerializationClass> tempCollection = new List<SerializationClass>(); 

Hier habe ich die tempCollection zu Dictionary

Dictionary<string, List<string>> tempDict = new Dictionary<string, List<string>>(tempCollection.Count); 

tempCollection zu konvertieren konvertieren möchten muss in tempDict konvertiert werden?

Schätzen Sie Ihre Antworten.

Dank und Grüße,

Amal Raj. Rufen Sie

+1

Was man alles versucht? .. –

Antwort

5

einfach Linq des ToDictionary Erweiterungsmethode für IEnumerable<T>, einzige Bedingung key ist für jedes Element eindeutig sein muss, sonst wird es scheitern, da Dictionary will einen eindeutigen Schlüssel

var tempDict = tempCollection.ToDictionary(x => x.key, x => x.values); 
+0

Vielen Dank. Muss ich irgendeine DLL-Referenz hinzufügen? Weil ich ToDictionary() bereits versucht habe, aber ich konnte es nicht benutzen. – Amal

+0

Verwenden Sie System.Linq, DLL und Namespace –

+0

Angeschlossen ist das Fehler-Popup. @Mrinal – Amal

Verwandte Themen