ObjectDataSource.SortParameterName プロパティ

定義

データ ソースの並べ替えをサポートするために、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

プロパティ値

データの並べ替えに使用するパラメーターを示すために使用するメソッド パラメーターの名前。 既定値は空の文字列です。

このセクションには、2 つのコード例が含まれています。 最初のコード例では、並べ替えをサポートする型を実装する方法を示します。 2 番目のコード例では、並べ替え式を実装する方法を示します。

次のコード例では、並べ替えをサポートする型を実装する方法を示します。 クラスの SortingDataSelectMethodsortExpressionパラメーター を受け取ります。 に渡されるSelectMethod文字列は、 によって返される オブジェクトの DataView プロパティにSelectMethod使用Sortされます。

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

次のコード例は、並べ替え式を実装する方法を示しています。 Web ページのコードは、 コントロールのインスタンスを ObjectDataSource 作成します。 プロパティは TypeNameSortingData 設定され、 SortParameterName プロパティは に sortExpression設定されます。 AllowSortingコントロールの プロパティは GridViewtrue設定されます。 ユーザーが [並べ替え ] ボタンをクリックすると、並べ替えパラメーターで フィールド名 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がデータ バインド コントロールに関連付けられている場合、このパラメーターに渡される値は、コンマ区切りのフィールド値の後に または "DESC"が続く"ASC"形式になります。 たとえば、 の昇順並べ替え Name の値は になります "Name ASC"

プロパティは SortParameterName 、コントロールに SortParameterName 関連付けられている オブジェクトの ObjectDataSourceView プロパティに ObjectDataSource デリゲートします。

適用対象

こちらもご覧ください