C#中使用LINQ to选择行的最大ID [英] C# Using LINQ to select max ID of row

查看:106
本文介绍了C#中使用LINQ to选择行的最大ID的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个面包屑表,我要返回最近一次插入的行。在SQL这将是一个 MAX()的功能,但不知道如何做LINQ的等价物。基本上我想选择具有最高 BreadCrumbID WHERE专案编号= 49 的行。



下面的查询我现在将选择所有的行 WHERE专案编号= 49 。我要选择具有最高 BreadCrumbID



谢谢!



代码:

 使用(dbPSREntities5 myEntities =新dbPSREntities5())
{
VAR currentStatus =(从tbBreadCrumb在myEntities.tbBreadCrumbs.Where(X => x.ProjectID == 49)
选择新的
{
状态= tbBreadCrumb.BreadCrumbID,
});
}


解决方案

试试这个:

 使用(dbPSREntities5 myEntities =新dbPSREntities5())
{
VAR currentStatus =(从tbBreadCrumb在myEntities.tbBreadCrumbs 。凡(X => x.ProjectID == myEntities.tbBreadCrumbs.Max(b = GT; b.ProjectId))
选择新的
{
状态= tbBreadCrumb.BreadCrumbID,
});

}


I have a breadcrumb table and I want to return the row that was most recently inserted. In SQL it would be a MAX() function but not sure how to do the equivalent in LINQ. Basically I want to select the row that has the highest BreadCrumbID WHERE ProjectID = 49.

Here's the query I have right now that would select all rows WHERE ProjectID = 49. I want to select the row that has the highest BreadCrumbID.

Thanks!

Code:

using (dbPSREntities5 myEntities = new dbPSREntities5())
{
   var currentStatus = (from tbBreadCrumb in myEntities.tbBreadCrumbs.Where(x => x.ProjectID == 49)
                        select new
                        {
                           Status = tbBreadCrumb.BreadCrumbID,
                        });
}

解决方案

try this:

using (dbPSREntities5 myEntities = new dbPSREntities5())
    {
        var currentStatus = (from tbBreadCrumb in myEntities.tbBreadCrumbs.Where(x => x.ProjectID == myEntities.tbBreadCrumbs.Max(b=>b.ProjectId))
                              select new
                              {
                                  Status = tbBreadCrumb.BreadCrumbID,
                              });

    }

这篇关于C#中使用LINQ to选择行的最大ID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆