ObjectDataSource.SortParameterName 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定商務物件的名稱,SelectMethod 參數使用該名稱指定資料來源排序支援的排序運算式。
public:
property System::String ^ SortParameterName { System::String ^ get(); void set(System::String ^ value); };
public string SortParameterName { get; set; }
member this.SortParameterName : string with get, set
Public Property SortParameterName As String
屬性值
方法參數的名稱,用於指出要用於排序資料的參數。 預設為空字串。
範例
本節包含兩個程式碼範例。 第一個程式代碼範例示範如何實作支援排序的類型。 第二個程式代碼範例示範如何實作排序表達式。
下列程式代碼範例示範如何實作支援排序的類型。 類別的 SortingData
接受SelectMethod
參數 sortExpression
傳遞給 SelectMethod
的字串會用於 Sort 所SelectMethod
傳回之 DataView 物件的 屬性。
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace Samples.AspNet.CS
{
public class SortingData
{
public SortingData()
{
}
private static DataTable table;
private DataTable CreateData()
{
table = new DataTable();
table.Columns.Add("Name", typeof(string));
table.Columns.Add("Number", typeof(int));
table.Rows.Add(new object[] { "one", 1 });
table.Rows.Add(new object[] { "two", 2 });
table.Rows.Add(new object[] { "three", 3 });
table.Rows.Add(new object[] { "four", 4 });
return table;
}
public DataView SelectMethod(string sortExpression)
{
table ??= CreateData();
DataView dv = new DataView(table);
dv.Sort = sortExpression;
return dv;
}
}
}
Imports System.Data
Imports System.Configuration
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls
Namespace Samples.AspNet.VB
Public Class SortingData
Public Sub New()
End Sub
Private Shared table As DataTable
Private Function CreateData() As DataTable
table = New DataTable()
table.Columns.Add("Name", GetType(String))
table.Columns.Add("Number", GetType(Integer))
table.Rows.Add(New Object() {"one", 1})
table.Rows.Add(New Object() {"two", 2})
table.Rows.Add(New Object() {"three", 3})
table.Rows.Add(New Object() {"four", 4})
Return table
End Function
Public Function SelectMethod(ByVal sortExpression As String) As DataView
If table Is Nothing Then
table = CreateData()
End If
Dim dv As New DataView(table)
dv.Sort = sortExpression
Return dv
End Function
End Class
End Namespace
下列程式代碼範例示範如何實作排序表達式。 網頁中的程式代碼會建立控件的 ObjectDataSource 實例。 屬性 TypeName 設定為 SortingData
,而 SortParameterName 屬性設定為 sortExpression
。 控制元件 AllowSorting 的 GridView 屬性設定為 true
。 當使用者按鍵 按 鍵時,功能變數名稱 Name
或 Number
會在排序參數中傳遞至 SelectMethod
。
<%--<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>
--%><%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1"
runat="server"
DataSourceID="ObjectDataSource1"
AllowSorting="True">
</asp:GridView>
<asp:ObjectDataSource
ID="ObjectDataSource1"
runat="server"
SelectMethod="SelectMethod"
TypeName="Samples.AspNet.CS.SortingData"
SortParameterName="sortExpression">
</asp:ObjectDataSource>
</div>
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1"
runat="server"
DataSourceID="ObjectDataSource1"
AllowSorting="True">
</asp:GridView>
<asp:ObjectDataSource
ID="ObjectDataSource1"
runat="server"
SelectMethod="SelectMethod"
TypeName="Samples.AspNet.VB.SortingData"
SortParameterName="sortExpression">
</asp:ObjectDataSource>
</div>
</form>
</body>
</html>
備註
屬性 SortParameterName 是用來支持數據源排序。 SortExpression在對象上DataSourceSelectArguments設定屬性並傳遞至 Select 方法時,SortParameterName值會根據數據排序來識別商務物件方法的參數名稱SelectMethod。
ObjectDataSource如果與資料綁定控件相關聯,傳遞至此參數的值會採用逗號分隔域值的形式,後面接著 "ASC"
或 "DESC"
。 例如,的 Name
遞增排序值會是 "Name ASC"
。
屬性SortParameterName會委派給SortParameterName與 ObjectDataSource 控件相關聯之 ObjectDataSourceView 對象的屬性。