Guten Morgen zusammen,
ich habe seit längere Zeit das Problem, dass ich den System.DBNULL typ nicht abfangen kann!
In ein Dataset habe ich Daten von einer Datenbank eingelesen. Mit hilfe einer Schleife möchte ich nun ein Listenfeld füllen!
"i" brauche ich deshalb, weil mein Dataset 5 Spalten hat und der Benutzer über eine Combobox das Anzeigekriterium auswählen kann. Daraus ergibt sich dann der entsprechende index wert i.
Mein Problem:
Es gibt jetzt auch den Fall, dass das ausgewählte kriterium leer ist und dieser leere Eintrag soll natürlich nicht in der Liste erscheinen.
In VB.net kann ich dies sehr gut abfangen aber in C# habe ich es nicht geschafft. Ich habe gerstern schon den ganzen Tag versucht es abzufangen aber ohne erfolg.
Bitte Bitte kann mir wer helfen?
Vielen Dank jetzt schon mal
Isabelle
ich habe seit längere Zeit das Problem, dass ich den System.DBNULL typ nicht abfangen kann!
In ein Dataset habe ich Daten von einer Datenbank eingelesen. Mit hilfe einer Schleife möchte ich nun ein Listenfeld füllen!
Code:
foreach (DataTable dt in this.dSKunden.Tables)
{
int i = 0;
if (this.cmbSucheWaehlen.SelectedItem == "Name")
{
i = dt.Columns.IndexOf("Name");
}
else if (this.cmbSucheWaehlen.SelectedItem == "Firma")
{
i = dt.Columns.IndexOf("Firma");
}
else if (this.cmbSucheWaehlen.SelectedItem == "Kundennummer")
{
i = dt.Columns.IndexOf("Kundennummer");
}
else if (this.cmbSucheWaehlen.SelectedItem == "Ort")
{
i = dt.Columns.IndexOf("Ort");
}
foreach (DataRow dr in dt.Rows)
{
if (dr[i] != "")
{
this.lstErgebnis.Items.Add(dr[i]);
}
else
{
i = 0;
}
}
}
Mein Problem:
Es gibt jetzt auch den Fall, dass das ausgewählte kriterium leer ist und dieser leere Eintrag soll natürlich nicht in der Liste erscheinen.
In VB.net kann ich dies sehr gut abfangen aber in C# habe ich es nicht geschafft. Ich habe gerstern schon den ganzen Tag versucht es abzufangen aber ohne erfolg.
Bitte Bitte kann mir wer helfen?
Vielen Dank jetzt schon mal
Isabelle