DataTable[] dt = new DataTable[2];
for(i = 0; i <= 1; i++)
{
dt[i].Columns.Add("id");
dt[i].Columns.Add("name");
}
当我跑步时,我得到:
对象引用未设置为对象的实例。
可以像这样声明和使用DataTable数组吗?
答案 0 :(得分:1)
是的,你可以这样做,你得到了这个错误,因为dt[i]
不是DataTable实例:
你可以这样做:
dt[i] = new DataTable();
完整代码:
DataTable[] dt = new DataTable[2];
for(i = 0; i <= 1; i++)
{
dt[i] = new DataTable()
dt[i].Columns.Add("id");
dt[i].Columns.Add("name");
}
答案 1 :(得分:0)
DataTable[] dt = new DataTable[2];
for(i = 0; i <= 1; i++)
{
dt[i].Columns.Add("id");
dt[i].Columns.Add("name");
}
我认为在代码中你声明一个有2个位置(空)的数组,但实际上并没有填充它们。
你需要:
DataTable[] dt = new DataTable[2];
for(i = 0; i <= 1; i++)
{
dt[i] = new DataTable();
dt[i].Columns.Add("id");
dt[i].Columns.Add("name");
}
要回答你的问题,是的,你应该能够拥有一个DataTable
数组。
答案 2 :(得分:0)
您必须先初始化DataTable[]
数组元素:
dt[0] = new DataTable();
dt[1] = new DataTable();
或在循环中
for(i = 0; i <= 1; i++)
{
dt[i] = new DataTable();
dt[i].Columns.Add("id");
dt[i].Columns.Add("name");
}