Jeg har lidt problemer med at forstå, hvordan RecordsAffected skal
opføre sig. Jeg har - selvsagt - en SQL-forespørgsel, hvor jeg gerne
vil checke på, om den resulterer i nogle rækker eller ej. Mit problem
er blot, at den kun vil give mig resultatet "-1" Hvis jeg læser
documentationen for Odbc.Net korrekt, så kræver anvendelsen
af .RecordsAffected, at OdbcDataReader er lukket ... men det ser ikke
ud til at hjælpe mig :(
Koden der henter data ud ser således ud:
void checkLogin() {
dbOdbc oDB = new dbOdbc();
string strSHA1Pswd = FormsAuthentication.HashPasswordForStoringInConfigFile(strPassword.Text, "SHA1");
string strSQL = "SELECT UserName,Level FROM Table1 where UserName = '" + strUserName.Text + "' AND SHA1Pswd = '" + strSHA1Pswd + "'";
OdbcDataReader oDataReader = oDB.getData(strSQL);
if(oDataReader.IsClosed){
isclosed.Text = "true";
count.Text = oDataReader.RecordsAffected.ToString();
}
else
{
isclosed.Text = "false";
}
}
.... der anvender klassen
public class dbOdbc : Page
{
public OdbcDataReader getData(string strSQL) {
OdbcConnection oCon;
OdbcCommand oCmd = new OdbcCommand();
oCon = new OdbcConnection("driver={MySQL};server=;uid=;pwd=;database=;OPTION=17923");
oCon.Open();
oCmd.Connection = oCon;
oCmd.CommandText = strSQL;
OdbcDataReader result = oCmd.ExecuteReader(CommandBehavior.CloseConnection);
result.Close();
oCon.Close();
return result;
}
}
Hvordan skal jeg lave min kode, så jeg har adgang til disse metoder ? Når
jeg bruger koden
if(oDataReader.IsClosed){
isclosed.Text = "true";
count.Text = oDataReader.RecordsAffected.ToString();
}
else
{
isclosed.Text = "false";
}
kan jeg jo se, at oDataReader er lukket ... men når jeg udskriver antallet
af rækker, så giver den mig stadig svaret "-1" [1]. Dette kan bla. ses ved
at prøve at logge ind med brugernavn "user" og password "user" på
http://admin.stocholm.dk, hvor jeg har oprettet en sådan bruger.
[1] Jeg kunne nu godt komme udenom dette på anden vis, men jeg er lidt
træt af, at jeg ikke kan få det til at virke, som jeg mener det burde :)
--
Jesper Stocholm
http://stocholm.dk
http://asp.stocholm.dk
Svar til gruppen og ikke til mig privat pr. email :|