使用Linq从Table中的最后一行检索多个列

时间:2016-05-31 15:30:03

标签: c# sql linq

我是C# LINQ查询的新手。

我希望访问表中的最后一条记录并从中检索2列的值。

访问最后一行并不困难,因为我可以在一个唯一的整数键上按降序排序,其中较大的值表示稍后的添加,但我不知道如何使用返回2个不同的值(整数和字符串)一个查询。

我是否必须执行2个不同的查询,每个查询一个项目并返回它,或者将整个批次放在字符串中更有效率,并将字符串解析到别处?

这是我到目前为止所拥有的。我不确定哪种方式会更好。

public IEnumerable GetDeployHistoryTableDate(int nodeId)
{
        if (nodeId == 0)
        {
             return new List<object>();
        }
        using (var session = sessionFactoryProject.OpenSession())
        {
               using (var transaction = session.BeginTransaction())
               {
                   var items = session.Query<DeployHistory>()
                      .Where(i => i.NodeId == nodeId)
                      .OrderByDescending(i => i.Id)
                      .Select(i => new
                             {
                                 i.EndTime,
                                 i.Result
                             })
                             .First().ToString();

                transaction.Commit();
                return items;
               }
         }
  }

0 个答案:

没有答案