Wenn Sie SqlCommand.ExecuteReader() aufrufen , der SqlDataReader die es Ihnen gibt, steht zunächst vor der erste Rekord. Sie müssen SqlDataReader.Read() aufrufen zum ersten Datensatz zu wechseln, bevor Sie versuchen, auf Daten zuzugreifen. SqlDataReader.Read() gibt true zurück ob es in der Lage war, zum ersten Datensatz zu wechseln; es gibt false zurück wenn es keine Aufzeichnungen gibt.
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.
}