如何在linq中使用或运行sql

0 .net c# linq

我正在使用此代码,但收到错误.我想使用一个OR运算符.

DataClasses1DataContext dc = new DataClasses1DataContext();

private void button4_Click(object sender, EventArgs e)
{
   var i = dc.vins
             .Where(aa => aa.startDate < DateTime.Now)
             .Where(aa => aa.Sno > 1)
             .Select(aa => aa);
   dataGridView1.DataSource = i;
}
Run Code Online (Sandbox Code Playgroud)

此代码作为"AND"操作员工作如何使其充当"OR"操作员?

Jon*_*eet 7

只需将两个条件放在一个Where调用中,然后使用普通的C#||运算符:

var i = dc.vins.Where(aa => aa.startDate < DateTime.Now || aa.Sno > 1);
Run Code Online (Sandbox Code Playgroud)

请注意,我也删除了你的Select电话,因为它没有做任何有用的事情.

请注意,根据您的具体情况,您可能希望使用DateTime.UtcNow而不是DateTime.Now; 你应该仔细考虑如何处理时区.