Grid.MVC分页IQueryable

时间:2015-04-23 07:59:17

标签: asp.net-mvc linq grid iqueryable

我正在尝试使用Grid.MVC。我有几个问题:

public virtual ActionResult Index()
{
    return View(MVC.TableRequest.ActionNames.Index, TestClass.GetAll());
}

我的TestClass:

public static IQueryable<SheduleProfileModel> GetAll()
{
    var _db = new ApplicationDbContext();
    IQueryable<SheduleProfileModel> shedules = _db.Shedules.Include("Profiles").Select(x => new SheduleProfileModel
    {
        DateStart = x.DateStart,
        DateEnd = x.DateEnd,
        Approved = x.IsDirectorApproved
        ,
        UserName = x.Profile.FirstName.ToString() + " " + x.Profile.LastName.ToString(),
        Id = x.Id
    }).OrderBy(x => x.UserName);
    return shedules;
}

所以,我阅读了一个文档并尝试将IQueryable作为我的集合。但是当我使用分页grid.mvc创建一个从数据库中获取所有数据的查询时(Not Take()。Skip())。 OrderBy()也是如此。我该如何发送数据库正确查询?我应该在哪里关闭与DB的连接?

1 个答案:

答案 0 :(得分:0)

您无需管理Grid.Mvc控件的查询。您将使用GetAll方法获取所有数据并将其绑定到Grid。控件中的逻辑使用数据并为您管理过滤,排序等。

您将以正常方式关闭逻辑中的连接,就像您为任何其他目的获取数据和关闭连接一样。

为了增强体验,您还可以使用Grid.Mvc.Ajax控件来代替扩展基本Grid.Mvc控件的NuGet。你可以找到它HERE