C#Linq查询DataTable注意事项
来源:互联网 发布:排序算法简单比较 编辑:程序博客网 时间:2024/04/30 14:22
Linq查询时,涉及DataTable,查询结果可能为null,如果直接转换为新DataTable,则会报错。
例如:
try
{
List<int> intList = new List<int>();
intList.Add(1);
intList.Add(2);
DataTable table = new DataTable();
table.Columns.Add("ID", Type.GetType("System.Int32"));
table.Columns.Add("Name", Type.GetType("System.String"));
DataTable result = (from q in table.AsEnumerable()
join p in intList on q.Field<int>("ID") equals p
select q).CopyToDataTable();
}
catch (Exception ex)
{
throw ex;
}
上述程序运行是会报错:数据源中没有 DataRow。
由于查询结果没有数据,导致CopyToDataTable()方法报错。此种情况下,需要添加中间变量。
var result = from q in table.AsEnumerable()
join p in intList on q.Field<int>("ID") equals p
select q;
DataTable dt = table.Clone();
if (result.Count() > 0)
{
dt = result.CopyToDataTable();
}
修改后,程序运行就没有问题了。
- C#Linq查询DataTable注意事项
- Datatable中linq查询
- datatable筛选、查询-------linq
- datatable linq查询
- LINQ 查询中的注意事项
- LINQ查询返回DataTable类型
- Linq DataTable 查询与修改
- LINQ查询返回DataTable类型
- LINQ to Entities 查询注意事项
- Linq DataTable的修改和查询
- Linq查询datatable的记录集合
- Linq DataTable的修改和查询
- Linq DataTable的修改和查询
- 用linq对datatable进行分组查询并返回datatable
- 用linq对datatable分组查询并返回datatable
- LINQ 查询简介(C#)
- LINQ 查询简介 (C#)
- LINQ 查询简介 (C#)
- js动态添加事件
- oracle锁深入
- 黑马程序员_集合
- JBoss 系列七十九: jBPM 6 示例之 evaluation
- 父类子类有同名变量时候的初始化
- C#Linq查询DataTable注意事项
- 找出最长及最短字符串
- 黑马程序员_抽象类与接口
- 关于青春的电影有哪些
- Windows API函数之PlaySound函数以及sndPlaySound函数用法
- div 显示与隐藏
- 对老赵写的简单性能计数器的修改
- 黑马程序员_面向对象
- 故乡的海