Re: [問題] 有辦法一氣呵成產生DataTable嗎?

看板C_Sharp (C#)作者 ( )時間10年前 (2014/10/30 10:02), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《don750421 (1+1≠2)》之銘言: : 如標題,純粹好奇可不可以達到@@ : 如果我已經知道我DataTable要產生的欄位和內容。 : 有辦法一氣呵成產生嗎? : 目前的寫法是 : DataSet Data = new DataSet() : { : Table={ : new DataTable("Name"), : new DataTable("School"), : new DataTable("Year") : } : }; : Data.Tables["Name"].Columns.AddRange{ : new DataColumn[]{new DataColumn("Test",typeof(string)), : new DataColumn("Test",typeof(int))}; : Data.Tables["Name"].Rows.Add("ABC",12); : 好奇的想問,有辦法縮短寫法嗎? : 或許有辦法在建立DataTable的時候,就連同增加欄位及塞值? : 謝謝各位 雖然可以這樣寫,但相對的可讀性變得很差! 提供以下範例給你參考看看。 var ds = new DataSet { Tables = { new DataTable { Columns = { new DataColumn("id", typeof (int)), new DataColumn("name", typeof (string)), new DataColumn("hasChild", typeof (bool)) }, Rows = { new object[] {1, "John", true}, new object[] {2, "Tom", false}, new object[] {3, "Susan", true} } }, new DataTable { Columns = { new DataColumn("key", typeof (string)), new DataColumn("value", typeof (string)), }, Rows = { new object[] {"key1", "value1"}, new object[] {"key2", "value2"}, new object[] {"key3", "value3"}, } } } }; -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.7.54 ※ 文章網址: http://www.ptt.cc/bbs/C_Sharp/M.1414634524.A.DC9.html

10/30 20:51, , 1F
感謝前輩指導
10/30 20:51, 1F
文章代碼(AID): #1KKPmSt9 (C_Sharp)
文章代碼(AID): #1KKPmSt9 (C_Sharp)