1
Ich habe folgenden Code, um Tabellendaten in einem Objekt zu erhalten, aber ich bekomme Fehler und ich weiß nicht, wo ich falsch liege.Index war außerhalb des Bereichs. Muss nicht negativ sein und weniger als die Größe der Sammlung
public List<ModelGetEmployeeList> GetEmployeeList()
{
List<ModelGetEmployeeList> empList = new List<ModelGetEmployeeList>();
DataTable dt = new DataTable();
string q = "select uid,fname,lname from nworksuser;";
MySqlCommand cmd = new MySqlCommand(q,conn);
MySqlDataAdapter adapter = new MySqlDataAdapter(cmd); ;
conn.Open();
adapter.Fill(dt);
conn.Close();
for (int i = 0; i < dt.Rows.Count; i++)
{
foreach (DataRow row in dt.Rows)
{
//Here I am getting following error
// Index was out of range. Must be non-negative and less than the size of the collection.
empList[i].uid = row["uid"].ToString();
empList[i].fname = row["fname"].ToString();
empList[i].lname = row["lname"].ToString();
}
}
return empList;
}
Und ModelGetEmployeeList Klasse ist wie this-
public class ModelGetEmployeeList
{
public string uid { get; set; }
public string fname { get; set; }
public string lname { get; set; }
}
Hallo @Kael, dank es zu korrigieren. Gut gearbeitet. – Dipak
Kein Problem @DipakAkhade – KaeL
Und keine Notwendigkeit zum Öffnen und Schließen der Verbindung als Datenadapter kümmert sich darum –