pobieranie z bazy .sdf

0

Witam serdecznie!

Z góry dziękuję za pomoc w następująctm problemie (piszę w C# aplikację okienkową). W zależności od Parametru AAA instrukcją warunkową switch chcę otworzyć określone okno

 
sring AAA = row_AAA["aaa"].ToString();

switch (AAA)
{
case "qwer":
oknoA okno1 = new oknoA(xxx);
okno1.Show();
break;
case "qazw":
oknoB okno2 = new oknoB(xxx);
okno2.Show();
break;

// i tak sobie otwieram okna w tym zakresie działa bez zarzutów

default: //dla pozostałych wariantów ma owtorzyć jedno lub drugie okno, zależy to od danych wpisanych do bazy .sdf

SqlCeDataAdapter DA = new SqlCeDataAdapter("SELECT uprawnienie FROM tabela_aaa WHERE id = '"+textBox1.text+"'", conection);
DataSet ds = new DataSet();
ds.Tables.Add("upraw");
DA.Fill(ds, "upraw");

// to powstaje problem!

foreach(DataRow row in ds.Tables[0].Rows)
{
if(ds.Tables[0].Rows[0][0].ToString() == "tak")
{
oknoX okno6 = new oknoX(xxx);
okno6.Show();
}
else
{
oknoZ onko7 = new oknoZ(xxx);
okno7.Show();
}
}
break;
}

Problem polega na tym, że po połaczeniu z bazą danych i pobraniem z kolumny uprawnienie progarm wyżwietla okno 7. Im bardzie zaglądam do tabeli uprawnienie to przy id jest słowo "tak" więc powinno się otworzyć okno6.

Z góry jeszcze raz dziękuję za wskaznie gdzie jest błąd w moim kodzie.

Pozdrawiam

0

A zrób sobie takie cuś:

MessageBox.Show(ds.Tables[0].Rows[0][0].ToString());

A właściwie to nie rozumiem, po co robisz foreach row in... a potem nie wykorzystujesz tego row... Nie wiem, może jest w tym jakiś wyższy zamysł, a może miało tam być if (row[0].ToString()...?

1 użytkowników online, w tym zalogowanych: 0, gości: 1