2009-03-04 6 views
0

I Wörterbuch als heterogenes Behälter verwenden:Anzahl der Elemente jeder Art in einer heterogenen containercontainer

Dictionary<string, Object> _Table; 

Es bildet im Grunde eine Beschreibung int/double/string/ISerialiazable/etc-Typen.

Ich möchte die Anzahl der Elemente jedes Typs effizient berechnen und dann nur die Elemente dieses Typs drucken - in SQL würde ich nach Typ gruppieren, dann Anzahl und alle Elemente für jeden Typ jeweils drucken.

Ich verwende nicht LINQ, wie ich dies in .net 2.0 unterstützen muss. Ich certianly Linq-ähnlichen Lösungen für Bildungszwecke fördern, aber bitte beachten Sie, dass ich nur einen Code kompatibel mit .NET 2.0

Im Moment habe ich eine Abhilfe verwenden, wobei ich Wörterbücher für jeden Typen verwenden, und dann Iterieren über alle Wörterbücher.

Danke ....

Antwort

2

EDIT: Sie wollten auch die Objekte drucken:

Dictionary<Type, List<object>> numTypes = new Dictionary<Type, List<object>>(); 

foreach(KeyValuePair<string, object> pair in _Table){ 
    Type type = object.GetType(); 
    if (!numTypes.ContainsKey(type)){ 
     numTypes[type] = new List<object>(); 
    } 

     numTypes[type].Add(object); 
} 
+0

zweiten Wörterbuch? sieht aus wie eine Redundanz. –

Verwandte Themen