Entwickler-Ecke

Basistechnologien - String an ein DataSet anfügen


Mr.y - Mo 28.06.10 08:44
Titel: String an ein DataSet anfügen
hallo, ich habe eine Funktion, wo ein DataSet als Rückgabewert arbeitet.
Nun habe ich aus einer TXT-Datei was ausgelesen und möchte nun
diese Zeichenfolge, also String irgendwie an diesen DataSet anbinden :?

Wie kann ich das hinkriegen? irgendwie fand ich nur ein Wirrwar in google :(

Danke schon mal :)


JüTho - Mo 28.06.10 12:09

So kommst du auch nicht weiter, weil ein DataSet nichts mit einem String anfangen kann.

Ein DataSet enthält DataTables; du brauchst also zunächst die "richtige" DataTable. Eine einzelne DataTable besteht aus einer Anzahl Spalten und einer Menge Zeilen. Vermutlich ist DataTable.Rows.Add() das richtige Vorgehen; also brauchst du eine passende DataRow. Diese besteht aus den Werten für die einzelnen Spalten; diese musst du also aus dem String herausholen.

Ohne zu wissen, wie der String aussieht, kann man nicht mehr sagen. Eine denkbare Lösung geht etwa so:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
string[] values = line.Split();
DataRow row = myTable.NewRow();
row["ID"] = values[0];    // aber aufpassen wegen Konvertierungsproblemen
row["Name"] = values[1];
// usw.
row.EndEdit();
myTable.Rows.Add(row);

Gruß Jürgen

PS. Unter C# gibt es keine Funktionen, sondern nur Methoden.


Mr.y - Mo 28.06.10 14:24

Danke dir für deine Antwort,

Ja, es ist mir erst danach aufgefallen, dass DataSet und String nicht zusammenpassen,
Darum ist da eine Textbox geeigneter

um dein Lösungsvorschlag auszuführen, wäre das ziemlich umständlich und viel code.....
ich hab das einfach so gemacht:


C#-Quelltext
1:
ArrayList[0].Add(String.split('Zeichen'));                    


und dann mit Property {get} das den Array an die Oberfläche geholt

Moderiert von user profile iconChristian S.: Quote- durch C#-Tags ersetzt


JüTho - Mo 28.06.10 20:20

Vergiss ganz schnell ArrayList, sondern benutze eine passende List<T>, hier vermutlich eine List<string>. ArrayList gehört in die Mottenkiste, stattdessen sind die generischen Listen das Mittel der Wahl.

Mir ist auch nicht klar, was du mit dem Add an Position 0 erreichen willst. Aber da du dich zu allen Details ausschweigst, kann ich mich dabei nur wundern, aber nichts vorschlagen.

Jürgen