【发布时间】:2018-06-28 03:24:06
【问题描述】:
我正在尝试使用下面的代码来存储价值,但它给了我错误。
int dqty= Convert.ToInt32(from row in result.AsEnumerable()
where row.Field<string>("batch_num") == k_batch.ToString()
select row.Field<int>("qty"));
基本上我想检索“数量”的值。
【问题讨论】:
我正在尝试使用下面的代码来存储价值,但它给了我错误。
int dqty= Convert.ToInt32(from row in result.AsEnumerable()
where row.Field<string>("batch_num") == k_batch.ToString()
select row.Field<int>("qty"));
基本上我想检索“数量”的值。
【问题讨论】:
不管你的其他问题,你不能将列表/集合转换为整数
您需要使用FirstOrDefault 或类似名称
Enumerable.FirstOrDefault Method (IEnumerable)
返回序列的第一个元素,如果 序列不包含任何元素。
示例
int dqty = (from row in result.AsEnumerable()
where row.Field<string>("batch_num") == k_batch.ToString()
select row.Field<int>("qty")).FirstOrDefault();
更新
更多示例
var list = new List<int>() {23, 345, 546, 345};
var result = (
from row in list
where row > 23
select row).FirstOrDefault();
Console.WriteLine(result);
输出
345
【讨论】: