数据表linq选择查询

时间:2011-11-11 09:25:39

标签: linq

我试图根据条件从数据表中选择列的值。

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)

2 个答案:

答案 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();