我试图根据条件从数据表中选择列的值。
var results = from DataRow myRow in dtCallBack.AsEnumerable()
where myRow.Field<DateTime>(1) == startDateTime
&& myRow.Field<int>(0) == callBackID
select myRow.Field<int>(3);
我的数据表包含4列ID,Date1,Date2,IntVal
我想将变量结果转换为int。 (我想返回第4列IntVal)
答案 0 :(得分:1)
根据它的外观,你现在有一个IEnumerable<int>
。那么你想要哪些结果呢?如果不任何结果,您希望发生什么?
如果你确信只有一个结果,你可以使用:
var result = results.Single();
如果您想要第一个结果,或者如果没有,则可以使用
var result = results.FirstOrDefault();
如果您想要第一个结果,如果没有,则可以使用
var result = results.First();
基本上有很多选择,在我们真正给你一个更具体的答案之前,你需要澄清你的要求。
答案 1 :(得分:1)
var results = (from DataRow myRow in dtCallBack.AsEnumerable
where myRow.Field<DateTime>(1) == startDateTime
&& myRow.Field<int>(0) == callBackID
select myRow.Field<int>(3)).SingleOrDefault();