首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用列名字典设置DataTable结构?

如何使用列名字典设置DataTable结构?
EN

Stack Overflow用户
提问于 2018-08-01 22:12:09
回答 2查看 513关注 0票数 1

有没有更有效的方法(单行优先,但不是必须的)来设置数据表列结构,而不是像下面这样的foreach?

代码语言:javascript
复制
// Identifiers used are:
var dataTable = new DataTable();
var columns = new System.Collections.Generic.Dictionary<string, System.Type>()
{
    { "Column 1", typeof(int) },
    { "Column 2", typeof(string) },
    { "Column 3", typeof(string) }
};

foreach (System.Collections.Generic.KeyValue<string, System.Type> column in columns)
{
    dataTable.Columns.Add(column.Key, column.Value);
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-01 22:15:54

您可以使用LINQ。

代码语言:javascript
复制
columns.ToList().ForEach(c => dataTable.Columns.Add(c.Key, c.Value))

这基本上是一回事。

票数 3
EN

Stack Overflow用户

发布于 2018-08-01 22:37:34

另一种可能是使用LINQ,尽管可能不会比在单行上更“高效”:

代码语言:javascript
复制
dataTable.Columns.AddRange(columns.Keys.Select(x => new DataColumn(x, columns[x])).ToArray());

这实际上是将字典强制转换为一个DataColumn对象数组,然后使用DataTable.Columns.AddRange()方法将它们添加到DataTable而不是.Add()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51635515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档