Ja się nie dziwie, że wy później tak piszecie jak nauczyciel daje wam taki kod i każe pisać głupoty. Jest jeszcze opcja, że ty nie zrozumiałeś zadania. Mam wrażenie, że zadaniem jest przekonwertować DataTable
do List
o określonym typie. Jeśli pobierasz dane z tabeli Jedzenie
, w których masz pola - id, nazwa, cena to robisz taką klasę, która odzwierciedla kolumny w tabeli:
public class Jedzenie
{
public int Id { get; set; }
public string Nazwa { get; set; }
public decimal Cena { get; set; }
}
Obiekt DataRow
jest wierszem z DataTable.Rows
. Jeśli chcesz stworzyć obiekt na podstawie wiersza z tabeli korzystając z konstruktora.
//KONSTRUKTOR
public Jedzenie(DataRow row)
{
Id = (int)row["id"];
Nazwa = row["nazwa"].ToString();
Cena = (decimal)row["cena"];
}
Wyciągasz dane z bazy do DataTable
i w pętli po wszystkich wierszach tworzysz obiekt klasy Jedzenie
i robisz z nim co chcesz
DataTable table = new DataTable();
foreach(DataRow row in table.Rows)
{
Jedzenie jedzenie = new Jedzenie(row);
// obiekt "jedzenie" przyjmuje dane z wiersza
}
Jeśli potrzebujesz listę. To robisz listę danego typu (u nas przykładem jest typ/klasa Jedzenie
)
DataTable table = new DataTable();
List<Jedzenie> listaJedzenie = new List<Jedzenie>();
foreach(DataRow row in table.Rows)
{
Jedzenie jedzenie = new Jedzenie(row);
listaJedzenie.Add(jedzenie);
}
// tutaj z obiektem "listaJedzenie" robisz co chcesz
Chyba jaśniej już się nie da.