Can I compress an if statement using linq in C#?

前端 未结 6 764
野的像风
野的像风 2021-01-20 01:08

In sql, I can make an if statement like the following If MY_STATE in (1,2,3,4)

In C# I have to type if(MY_STATE == STATE.CT || MY_STATE == STATE.MA || MY_STATE == ST

6条回答
  •  青春惊慌失措
    2021-01-20 01:19

    You want to use Contains, which maps onto the SQL IN. I'm assuming State is an enum and stored as an integer.

    var states = new int[] { (int)State.CT, (int)State.MA, (int)State.VA, (int)State.RI };
    
    var query = db.States.Where( s => states.Contains( s.State ) );
    

提交回复
热议问题