使用 LINQ select .NET Framework 中的最后一条记录
Using LINQ to select the last record in .NET Framework
我需要使用 LINQ 查询 SQL 数据库中的最后一条记录。
我现在这样做的方式需要两个步骤。首先,我使用 OrderByDescending 获取 ID 值。然后,我在另一个查询中使用该 ID 来获取完整的记录集。
var model = _context.SystemViewModel.OrderByDescending(u => u.ID).Select(x => x.ID).FirstOrDefault();
if (ID > 0)
{
ViewBag.user = from x in _context.SystemViewModel where x.ID == ID select x;
}
else
{
ViewBag.user = from x in _context.SystemViewModel where x.ID == model select x;
}
LINQ 中是否有一种方法可以一步完成此操作?
ViewBag.user = from x in _context.SystemViewModel where x.ID == (ID > 0 ? ID : model) select x;
您可以使用 ?:operator
https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/conditional-operator
我需要使用 LINQ 查询 SQL 数据库中的最后一条记录。 我现在这样做的方式需要两个步骤。首先,我使用 OrderByDescending 获取 ID 值。然后,我在另一个查询中使用该 ID 来获取完整的记录集。
var model = _context.SystemViewModel.OrderByDescending(u => u.ID).Select(x => x.ID).FirstOrDefault();
if (ID > 0)
{
ViewBag.user = from x in _context.SystemViewModel where x.ID == ID select x;
}
else
{
ViewBag.user = from x in _context.SystemViewModel where x.ID == model select x;
}
LINQ 中是否有一种方法可以一步完成此操作?
ViewBag.user = from x in _context.SystemViewModel where x.ID == (ID > 0 ? ID : model) select x;
您可以使用 ?:operator https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/conditional-operator