Entity framework 使用子查询';LINQ中具有最大函数的s

Entity framework 使用子查询';LINQ中具有最大函数的s,entity-framework,Entity Framework,我不熟悉实体框架,所以在将普通SQL语句转换为LINQ时遇到了很多问题。 下面的例子是我必须做的很多事情,但我似乎找不到解决方案 SQL语句: SELECT * FROM MyTable Table1 WHERE Table1.Column1 = 1 AND Table1.Column2 = 2 AND Table1.SequenceNr = (SELECT MAX(Table2.SequenceNr) FROM MyTable Table2

我不熟悉实体框架,所以在将普通SQL语句转换为LINQ时遇到了很多问题。 下面的例子是我必须做的很多事情,但我似乎找不到解决方案

SQL语句:

SELECT * 
  FROM MyTable Table1
 WHERE Table1.Column1 = 1
   AND Table1.Column2 = 2
   AND Table1.SequenceNr = (SELECT MAX(Table2.SequenceNr) 
            FROM MyTable Table2
                  WHERE Table2.Column1 = 1
             AND Table2.Column2 = 2)
==>我有一个表(不是我的:-)),其中包含3个重要的列以链接:2个数字和一个sequencenumber(用于保存某种历史记录)。 ==>我最需要的是sequencenumber最高的记录(“最后一条”),我用上面的查询来解决它

但是我如何在Linq(VB)中做到这一点? 我已经有了这样的东西:

Dim blah = (From oTmp In oDB.MyTable
           Where oTmp.Column1 = 1 And _
                 oTmp.Column2 = 2 And _
                 oTmp.SequenceNr = oDB.MyTable.Max(Function(x) x.SequenceNr)
          Select oTmp).ToList
有人有什么想法吗?:)

格里茨,
Jim

您只需向该内部查询添加一个
Where()
调用:

oTmp.SequenceNr = oDB.MyTable.Where(Function(x) x.Column1 = 1 And x.Column2 =2)
                             .Max(Function(x) x.SequenceNr)
哇!这是一个:-)Thanx的快速和正确的答案!!