DataTable[] dt = new DataTable[2];
for(i = 0; i <= 1; i++)
{
dt[i].Columns.Add("id");
dt[i].Columns.Add("name");
}
當我運行此我得到:你可以將一個DataTable聲明爲一個數組嗎?
對象引用不設置到對象的實例。
DataTable數組是否可以這樣聲明和使用?
DataTable[] dt = new DataTable[2];
for(i = 0; i <= 1; i++)
{
dt[i].Columns.Add("id");
dt[i].Columns.Add("name");
}
當我運行此我得到:你可以將一個DataTable聲明爲一個數組嗎?
對象引用不設置到對象的實例。
DataTable數組是否可以這樣聲明和使用?
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
陣列。
你們都很棒。謝謝 – 2013-03-13 23:02:25
是的,你可以做到這一點,你會得到錯誤,因爲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");
}
你必須首先初始化DataTable[]
數組元素:`Enumerable.Range(1,2:
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");
}
另一種方式來創建和初始化使用LINQ這陣內).Select(i => new DataTable())。ToArray();' – 2013-03-13 22:39:55