Вы не можете добавлять элементы в массив после его создания.Вместо использования массива используйте List<car>
.Это позволит вам позвонить. Добавить для добавления элементов.
Например:
// Create an List of car objects.
List<car> listOfCars = new List<car>()
{
new car("Ford",1992),
new car("Fiat",1988),
new car("Buick",1932),
new car("Ford",1932),
new car("Dodge",1999),
new car("Honda",1977)
};
Затем вы можете сделать:
for (int i = 0; i < dtable.Rows.Count; i++)
{
DataRow drow = dtable.Rows[i];
listOfCars.Add(new car(drow["make"].ToString(), drow["year"].ToString()));
}
Вы можете использовать listOfCars
как если бы вы использовали массив и обращались к элементам по индексу:
car myCar = listOfCars[3];
Если у вас должен быть массив, создайте его после того, как вы выполните «добавление в список», вызвав ToArray () в списке:
// ... Add as above...
car[] arrayOfCars = listOfCars.ToArray(); // Creates an array from your list
Редактировать:
Если вы просто пытаетесь выделить и построить свой массив из вашей DataTable, и вам не нужно добавлять элементы к нему после его создания,Вы можете использовать массив, например так:
// Create the array, specifying the total length
car[] arrayOfCars = new car[dtable.Rows.Count];
for (int i = 0; i < dtable.Rows.Count; i++)
{
DataRow drow = dtable.Rows[i];
// Assign each car to the specific index within the array (arrayOfCars[i])
arrayOfCars[i] = new car(drow["make"].ToString(), drow["year"].ToString());
}