相关疑难解决方法(0)

如何将DataTable转换为通用列表?

目前,我正在使用:

DataTable dt = CreateDataTableInSomeWay();

List<DataRow> list = new List<DataRow>(); 
foreach (DataRow dr in dt.Rows)
{
    list.Add(dr);
}
Run Code Online (Sandbox Code Playgroud)

有更好的/神奇的方式吗?

c# generics datatable

174
推荐指数
13
解决办法
47万
查看次数

在C#中将DataTable转换为通用列表

免责声明:我知道它在SO的很多地方都被问过.
我的查询有点不同.

编码语言:C#3.5

我有一个名为cardsTable的DataTable从DB中提取数据,我有一个类卡,它只有一些属性(没有构造函数)

public class Cards
{
    public Int64 CardID { get; set; }
    public string CardName { get; set; }
    public Int64 ProjectID { get; set; }
    public Double CardWidth { get; set; }
    public Double CardHeight { get; set; }
    public string Orientation { get; set; }
    public string BackgroundImage { get; set; }
    public string Background { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想将cardsTable数据插入List类型的对象.
我的数据将在其中包含空字段,因此当我转换数据时该方法不应该出错.以下方法是最好的方法吗?

DataTable dt = GetDataFromDB();
List<Cards> target = dt.AsEnumerable().ToList().ConvertAll(x => new Cards { CardID …
Run Code Online (Sandbox Code Playgroud)

c# linq generics datatable lambda

26
推荐指数
4
解决办法
9万
查看次数

如何将DataTable转换为动态对象?

我怎么能转换DataTableIEnumerable<dynamicObject>

例如,我想转换任何 DataTable

ID | Name          DI | emaN
---------    or    ---------
 1 | x              2 | x
 2 | y              1 | y
Run Code Online (Sandbox Code Playgroud)

在对象列表中

// list 1      (ex 1)             // list 2    (ex 2)
{                                 {
  { ID = 1, Name = "x" }            { DI = 2, emaN = "x" }
  { ID = 2, Name = "y" }            { DI = 1, emaN = "y" }
}                                 }
Run Code Online (Sandbox Code Playgroud)

所以

list1.First().ID    // 1 …
Run Code Online (Sandbox Code Playgroud)

c# datatable ienumerable dynamic

18
推荐指数
3
解决办法
4万
查看次数

将数据表转换为通用列表的最快方法

我有一个返回数据表的数据层选择方法.它是从业务层方法调用的,然后应该返回强类型的通用List.

我想做的是非常相似(但不一样)这个问题:
如何将DataTable转换为通用列表?

有什么不同之处在于我希望列表包含强类型对象而不是数据行(同样,我还没有这里可用的linq).

我很关心表现.然后将从表示层调用业务层方法,并且将迭代结果以显示给用户.在业务层添加额外的迭代似乎非常浪费,只能立即再次进行演示,所以我希望尽可能快.

这是一个常见的任务,所以我真的在寻找一个可以反复重复的好模式.

.net datatable n-tier-architecture .net-2.0

4
推荐指数
2
解决办法
3万
查看次数