linq查询条件

时间:2011-03-18 02:40:44

标签: c# linq

我在查询语法中编写了一个linq查询,我想知道如何添加另一个where子句。 基本上,我有以下内容:

var test = from t in MyDC.TheTable
           where t.UserID == TheUserID
           where t.DateDone.Date == TheDate.Date
           select new MyModel {.....};

TheTable有一个名为LinkedID的列,该列也在另一个名为ColorStatus的表中(1到10之间的数字)。我正在寻找where子句“ColorStatus表中的LinkedID小于7”。

感谢。

2 个答案:

答案 0 :(得分:4)

只是改善你的陈述的建议。您实际上可以将两个条件合并为一个条件。 &&表示“AND”

Where t.UserID == TheUserID && t.DateDone.Date = TheDate.Date

答案 1 :(得分:2)

您的信息“另一个名为ColorStatus的表格”在这里没有意义。

var test = from t in MyDC.TheTable
           where t.UserID == TheUserID
              && t.DateDone.Date == TheDate.Date
              && t.LinkedID < 7           
           select new MyModel {.....};

可能我没有听到你的想法,这里有一个join可以帮助你的例子。

var test = from t in MyDC.TheTable
           join x in MyDC.ColorStatus
           on t.LinkedID == x.LinkedID
           where t.UserID == TheUserID
              && t.DateDone.Date == TheDate.Date
              && x.AnotherField == 1
           select new MyModel {.....};
相关问题