2009-04-14 5 views
2

Ich verwende eine Datentabelle, wo für jede Zeile, die ich 3 oder 4 Felder speichern möchte, die Felder von verschiedenen Typen sind, beste Fallanzahl von Feldern ist 3, und ich möchte den row_index (der Zeile in der Datentabelle) notieren, wie ich es brauche.Ein Array unbekannter Größe mit Elementen mit variablen Zahlen von Werten/Eigenschaften

So möchte ich die Werte (für die Felder) für alle Zeilen in der Datentabelle speichern.

Bitte geben Sie mir ein Beispiel, Code-Schnipsel, oder mehr Informationen darüber, wie/Zugang zu strukturieren diese Informationen für jede n-te Zeile mit dem Zeilenindex (die auch gespeichert ist)

+0

Obwohl der ursprüngliche Titel einen Betrogenen anzeigen würde, was er verlangt (einschließlich der Fähigkeit für die Elemente, eine unbekannte Anzahl von Werten/Eigenschaften zu halten), macht es zu einer einzigartigen Frage, die nur eine korrekte Überarbeitung benötigt. – TheTXI

+0

Ppl Können Sie in diesem .. helfen? Es ist dringend. Ich brauche ein Code-Snippet, um ein Feld für jedes Element im Array zu deklarieren und darauf zuzugreifen. Ich bin mir nicht sicher, ob ich ArrayList oder List verwenden kann .. !!! –

Antwort

5

Arrays muss eine Länge zugewiesen werden, zu erlauben Sie eine beliebige Anzahl von Elementen: Verwenden Sie die List Klasse.

Zum Beispiel:

List<int> myInts = new List<int>(); 
myInts.Add(5); 
myInts.Add(10); 
myInts.Add(11); 
myInts.Count // = 3 

Um innerhalb der Liste viele Werte zu speichern, würde ich vorschlagen, Ihre eigene Klasse erstellen und zu speichern. Aber wenn Sie nicht möchten, können Sie eine Liste von Listen von Objekten haben.

List<List<object>> myList = new List<List<object>(); 
myList.Add(new List<object>() { 1, "APPLE", "red", "sweet" }); 
+0

Und er sagte Array, also bezweifle ich, dass er etwas will, das mehr tut als was ein Array könnte (außerhalb unbekannter Länge). Nun, das heißt nicht, dass er vielleicht nichts Besseres braucht. – Samuel

+0

Verwendung von Objekt ist nicht so toller Rat; Art besiegt den Zweck der Verwendung einer stark typisierten Liste! –

+0

Und ArrayList oder OrderedDictionary sind stark typisiert? – Samuel

1

Wenn Sie absolut keine Ahnung, welche Felder in jedem Element sein kann, ist die einzige Wahl der Unterkunft Tasche (Karte/Wörterbuch) von Schlüssel-Wert-Paare zu erstellen.

Sie können eine ArrayList oder eine OrderedDictionary verwenden, die eine Indexierung nach Ordnungszahl ermöglichen, um jedes Eigenschaftstaschenelement zu speichern.

0

Sie können XMLDocument zum Speichern von Daten verwenden. Es ist flexibel genug, um Daten zu speichern und zu bearbeiten, selbst wenn Sie sie nur im Speicher verwenden müssen.

Verwandte Themen