问题

我想在页面上使用LinqDataSource控件并限制返回的记录数量.我知道如果我使用后面的代码,我可以做这样的事情:

 IEnumerable<int> values = Enumerable.Range(0, 10);
IEnumerable<int> take3 = values.Take(3);
 

有谁知道这样的东西是否可以使用LinqDataSource控件?

[更新]

我将使用LinqDataSourceListView控件,而不是GridView或Repeater. LinqDataSource向导不能提供限制返回记录数量的能力.高级选项只允许您启用删除,插入和更新.

  最佳答案

我遇到了同样的问题.我得到的方法是在LinqDataSource上使用Scolition事件并手动返回结果.

例如

 protected void lnqRecentOrder_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
    DataClassesDataContext dx = new DataClassesDataContext();
    e.Result = (from o in dx.Orders
                where o.CustomerID == Int32.Parse(Request.QueryString["CustomerID"])
                select o).Take(5);
}
 

  相同标签的其他问题

c#asp.netdatabaselinqlinq-to-sql