实体框架调用函数

时间:2011-11-10 15:51:33

标签: asp.net entity-framework linq-to-entities

   protected void Page_Load(object sender, EventArgs e)
{
    OrderDataRepository rep = new OrderDataRepository();

    var results = rep.GetAllOrderData().
                  GroupBy(o => o.DRIVER_ID).
                  Select(g =>
                            new
                            {
                                DriverId = g.Key,
                                OrderCount = g.Count(),
                                OrderCountWhereNameIsNotNull = 
                                                  g.Count(o => o.RECEIVE_NAME != null)
                            }).ToList();

    DataViewer.DataSource = results;
    DataViewer.DataBind();
}

将从此代码中收到的DriverId将是一个数字。

我需要将此DriverId编号更改为名称 - 所以我需要调用另一个名为get的函数 并接受一个名字。

**public User Get(long userId)
        {
            return GetQuery().Single(x => x.Id == userId);
        }**

*公共用户调用实体“user”,其中“id”是驱动程序和“名称” 我们需要这个名字 请告诉我如何 enter image description here

1 个答案:

答案 0 :(得分:0)

这会有用吗?

var results = rep.GetAllOrderData().
              GroupBy(o => o.DRIVER_ID).
              Select(g =>
                        new
                        {
                            DriverId = g.Key,
                            Name = g.Select(d => d.DRIVER_NAME).FirstOrDefault(),
                            OrderCount = g.Count(),
                            OrderCountWhereNameIsNotNull = 
                                              g.Count(o => o.RECEIVE_NAME != null)
                        }).ToList();