2009-06-26 5 views
3

Wie kann ich einen Booleschen Wert in Dataset abzurufen, ich bin mit Visual Studio 2003, versuche ich die folgenden, aber es funktioniert nicht:Holen Sie sich einen boolean Wert von Datatable

//if product inactive, don't display, and redirect to main page 
    if((dbDataSet.Tables["productGeneral"].Rows[0]["Active"].Equals(0))) 

Ich habe sogar versucht, aber nicht funktioniert:

if((dbDataSet.Tables["productGeneral"].Rows[0]["Active"].toString() == false) 

die Spalten Name [ "aktiv"] ist, wobei der Wert in der Spalte entweder wahr oder falsch ist, sQL Server 2000

bitte helfen Sie mit

Antwort

3

Sie müssen direkt in eine Boole-Instanz umwandeln und dies einfach überprüfen.

Haben Sie ?: versucht

if(((bool)dbDataSet.Tables["productGeneral"].Rows[0]["Active"] == false)) 

Wenn es ein Bool ist, werden Sie das Ergebnis in einen bool direkt werfen wollen.

Der erste Fehler seit 0 ist ein Int32, kein Boolean. Sie sind in C# nicht vergleichbar, da sie unterschiedliche Typen sind. Der zweite fehlschlägt, da ToString() das Ergebnis in eine Zeichenfolge umwandelt und Sie eine Zeichenfolge mit einem Bool vergleichen, was wiederum nicht funktioniert.

+0

Vielen Dank für die Hilfe aus aus :) – Developer

1

Versuchen Sie, die folgenden

if (Convert.ToBoolean(dbDataSet.Tables["productGeneral"].Rows[0]["Active"]) == true) 
    {} 
Verwandte Themen