c# - 循环 Entity Framework 时如何检查数据?

标签 c# entity-framework foreach

我使用 Entity Framework 并且有一张表。数据是

Code    Check   Num
C1      true    10
C1      false   20
C2      true    15
C1      false   15
C1      true    15
C1      true    20
C2      false   10

好的,我将按 code = "C1"过滤数据,找到 Check = "true"和 Num = "15"的行。我使用代码如下:

var list = db.PRODUCTes.Where(e=>e.Code == C1);
var flag=0;
foreach (var item in list)
{
    if (list.Select(e => e.Check).SingleOrDefault() == true && list.Select(e => e.Num).SingleOrDefault() == 15)
    {
        flag = 1;
    }
    else
        flag = 2;
}
return flag;

我运行的时候,flag的值为2,我觉得不行。

最佳答案

为什么不使用 Enumerable Any? Ref

var flag = db.PRODUCTes.Any(e => e.Code == C1 && e.Check && e.Num == 15) ? 1 : 2;

那个?是 C# 中的条件运算符。了解一下 here .

关于c# - 循环 Entity Framework 时如何检查数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32864289/

相关文章:

c# - 将图像从独立存储加载到可观察集合不起作用

c# - 如何将异常标记为已记录(并且只记录一次)?

c# - 查询 Entity Framework 中的第 n 行

javascript - JS : for loop inside forEach

c# - LINQ + Foreach 与 Foreach + If

c# - pinvoke - 传递一个字符串 [] 作为输出参数

c# - Paypal 沙盒保险库 : C# The operation has timed out (HTTP request timeout was set to 30000ms)

c# - 配置多个数据库 Entity Framework 6

c# - 浏览 Entity Framework 迁移选项

PHP foreach 循环如果没有结果则跳过