Re: [问题] 有办法一气呵成产生DataTable吗?

楼主: tooto1985 ( )   2014-10-30 10:02:01
※ 引述《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"},
}
}
}
};
作者: don750421 (1+1≠2)   2014-10-30 20:51:00
感谢前辈指导

Links booklink

Contact Us: admin [ a t ] ucptt.com