問題

我想在頁面上使用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