如何在实体栏中的同一列下使用“ AND”

时间:2019-02-06 17:09:36

标签: c# sql entity-framework

我一直在寻找一种从表中检索某些特定信息的方法,但也没有检索任何结果,我正在使用Entity Framework和C#。

var plans = (
    from p in context.AirTables 
    where p.eflID == 536 && p.eflID == 537 
    select p)
    .ToList();

if (plans.Count() != 0)给我0的值,我100%确信我要检索的信息是正确的。

有人可以帮我吗?

预先感谢

2 个答案:

答案 0 :(得分:1)

您可能正在尝试检索AirTableseflID值在536列中构成的537。您可以通过几种方式做到这一点。

int[] ids = new int[] { 536, 537};
var plans = context.AirTables.Where(x=> ids.Contains(x.eflID)).ToList();

var plans = context.AirTables.Where(x=> x.eflID ==536 || x.eflID == 537).ToList();

第一个应翻译为... where eflID in (536, 537),第二个应翻译为... where eflID=536 OR eflID = 537

答案 1 :(得分:0)

您需要检查OR而不是And

var plans = context.AirTables.Where(x=> x.eflID ==536 || x.eflID == 537).ToList()