Quando chiami SqlCommand.ExecuteReader()
, il SqlDataReader
che ti dà è inizialmente posizionato prima il primo record. Devi chiamare SqlDataReader.Read()
per passare al primo record prima di tentare di accedere a qualsiasi dato. SqlDataReader.Read()
restituisce true
se è stato in grado di passare al primo record; restituisce false
se non ci sono record.
if (sqlDataReader.Read())
{
String roles = sqlDataReader[0].ToString();
return roles;
}
else
{
// The user name or password is incorrect; return something else or throw an exception.
}