linq where语句与OR
我正在使用linq-to-sql进行如下查询:
public static List<MyModel> GetData(int TheUserID, DateTime TheDate)
using (MyDataContext TheDC = new MyDataContext())
{
var TheOutput = from a in TheDC.MyTable
where a.UserID == TheUserID
(where a.Date1.Month == TheDate.Month && where a.Date1.Year == TheDate.Year)
OR
(where a.Date2.Month == TheDate.Month && where a.Date2.Year == TheDate.Year)
group a by a.Date1.Date AND by a.Date2.Date into daygroups
select new MyModel{...};
我如何编写这个以使OR和AND语句起作用? 我已经尝试了一个|| 和&&到位,但它不起作用,我坚持这个查询。
基本上,它应该在一个月内返回一个日期列表,并且在MyModel中,我确实很重要。 例如,在一列中,我计算了某一天设定的约会次数,在另一列中,我计算了同一天出席的约会次数。 日期1是指设置约会的日期,日期2是指约会的日期。 因此,例如,2011年3月3日,我设置了4个约会(Date1是2011年3月11日),并且它们将在未来的不同日期(Date2)中设置。 在同一日期(3月3日是Date2),我还参加了过去其他日期的其他几项约会。
感谢您的任何建议。
using (MyDataContext TheDC = new MylDataContext())
{
var TheOutput = from a in TheDC.MyTable
where a.UserID == TheUserID &&
(a.Date1.Month == TheDate.Month && a.Date1.Year == TheDate.Year)
||
( a.Date2.Month == TheDate.Month && a.Date2.Year == TheDate.Year)
group a by a.Date1.Date AND by a.Date2.Date into daygroups
select new MyModel{...};
尝试删除4个额外的“where”并将OR更改为||。
链接地址: http://www.djcxy.com/p/31907.html