假設我有一個包含五列的DataTable。我很好奇,爲什麼以下工作:使用SetOrdinal將列添加到DataTable
dt.Columns.Add("Blah").SetOrdinal(5);
但下面拋出ArgumentOutOfRangeException
:
dt.Columns.Add("Blah").SetOrdinal(dt.Columns.Count);
我也試過
dt.Columns.Add("Blah").SetOrdinal(dt.Columns.Count - 1);
其工作原理,但我不完全確定爲什麼。它是否與執行SetOrdinal
之前添加的列有關,從而增加了超出列範圍的計數?
很好的解釋,謝謝。避免不太清楚代碼的好建議。 – 2012-04-23 21:29:55
這是有點舊,但我認爲你的意思是: dt.Columns.Add(「Blah」); dt.Columns [「Blah」]。SetOrdinal(dt.Columns.Count-1); 但是,真的這是一個NOP,因爲無論如何,新列將被添加到結尾。這將是一個更有趣的示例,它將新列移到開頭: dt.Columns.Add(「Blah」); dt.Columns [「Blah」]。SetOrdinal(0); – 2016-08-11 18:21:54
我試圖得到更好的格式,但我想我不能。 – 2016-08-11 18:27:22