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

プロパティ値

String

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

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

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

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 作成します。 TypeNameこのプロパティは次にSortingData設定され、SortParameterNameプロパティは sortExpression. コントロールのプロパティがAllowSortingGridViewに設定trueされています。 ユーザーが [並べ替え] ボタンをクリックすると、フィールド名またはNumberフィールド名Nameが並べ替えパラメーターに渡されます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 関連付けられているオブジェクトの ObjectDataSourceView プロパティに ObjectDataSource デリゲートします。

適用対象

こちらもご覧ください