5

我看到很多关于将 DataSet 中的表转换为 DataRows 或其他行数据列表的帖子,但我找不到关于这个问题的任何信息。这是我使用 .Net 3.0 想到的:

    public static List<DataTable> DataSetToList(DataSet ds)
    {
        List<DataTable> result = new List<DataTable>();

        foreach (DataTable dtbl in ds.Tables)
        {
            result.Add(dtbl);
        }

        return result;
    }

有没有更好的方法,不包括扩展方法?

谢谢

4

2 回答 2

9

基于Why LINQ cast with a Data.DataTableCollection这将起作用;

List<DataTable> result = new List<DataTable>(ds.Tables.Cast<DataTable>())
于 2015-08-13T00:55:59.480 回答
0
IEnumerable<DataTable> sequence = dt.AsEnumerable();

或者

List<DataTable> list = dt.AsEnumerable().ToList();
于 2013-11-21T12:46:53.990 回答