LINQ query with a WHERE clause with multiple conditions

前端 未结 2 1643
面向向阳花
面向向阳花 2021-02-09 10:11

I use EntityFramework with POCOs.
Suppose I have POCOs defined like this (simplified):

class Class1
{
    public int ID;
    public int SomeNumber;
}

class          


        
2条回答
  •  攒了一身酷
    2021-02-09 10:50

    IMHO you should be OK with just this:

    Database DB = new Database(); 
    var result = DB.SomeClass.Where(x =>
                                Number == x.Class1.SomeNumber ||
                                Number == x.Class2.SomeNumber ||
                                Number == x.Class3.SomeNumber)
                             .ToList();
    

    Your query loads all data and after that you evaluate condition in .NET = you must test null value prior to accessing SomeNumber but that is not needed if you evaluate SomeNumber in SQL through Linq-to-entities. Linq-to-entities should perform automatic null coalescing.

提交回复
热议问题