在c#where in子句适用于整数?

时间:2017-05-11 12:10:01

标签: c# linq where-clause

这里我使用整数的where子句。可能吗 ?因为我没有得到所需的结果。

 ProjectDetail objProjlst1 = _ProjectContext.ProjectDetails.Where(x => x.Phase == Phase).SingleOrDefault();

    if(objProjlst1!= null){
    return true;
    }

    else
    {
    return false;
    }

这里Phase是一个整数。 当我运行整个Web应用程序时,我收到错误“对象对象”

2 个答案:

答案 0 :(得分:-2)

它应该工作,只是debuge并检查db中是否存在int记录,但尝试使用

  

.FirstOrDefault()输入.SingleOrDefault(),因为如果有多个结果会产生异常错误;

答案 1 :(得分:-2)

如果_ProjectContext.ProjectDetails有多个阶段项,那么它将抛出异常。

但是如果没有匹配的元素,那么它将返回0

var numbers = new[] {1 ,2, 3};

numbers.Where(x => x == 6).SingleOrDefault(); // returns 0

,因为

default(int) == 0