다음을 통해 공유


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

속성 값

데이터를 정렬하는 데 사용되는 매개 변수를 나타내는 데 사용되는 메서드 매개 변수의 이름입니다. 기본값은 빈 문자열입니다.

예제

이 섹션에는 두 가지 코드 예제가 포함되어 있습니다. 첫 번째 코드 예제에서는 정렬을 지원하는 형식을 구현하는 방법을 보여 줍니다. 두 번째 코드 예제에서는 정렬 식을 구현하는 방법을 보여 줍니다.

다음 코드 예제에서는 정렬을 지원하는 형식을 구현하는 방법을 보여 줍니다. SelectMethod 클래스의 SortingData 매개 변수sortExpression를 가져옵니다. 전달되는 문자열은 반환되는 SelectMethod 개체SelectMethod의 속성에 SortDataView 사용됩니다.

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 설정되고 메서드 SortParameterNameSelect 전달되면 값은 데이터가 정렬되는 비즈니스 개체 메서드의 SelectMethod 매개 변수 이름을 식별합니다.

ObjectDataSource 데이터 바인딩된 컨트롤과 연결된 경우 이 매개 변수에 전달되는 값은 쉼표로 구분된 필드 값 뒤에 오거나 "DESC"뒤에 오는 "ASC" 형식을 사용합니다. 예를 들어 오름차순 정렬 Name 의 값은 다음과 같습니다 "Name ASC".

SortParameterName 컨트롤과 SortParameterName 연결된 개체의 속성에 ObjectDataSourceView 속성이 위임됩니다ObjectDataSource.

적용 대상

추가 정보