다음을 통해 공유


ObjectDataSource.SelectParameters 속성

정의

속성에서 지정 SelectMethod 한 메서드에서 사용하는 매개 변수 컬렉션을 가져옵니다.

public:
 property System::Web::UI::WebControls::ParameterCollection ^ SelectParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection SelectParameters { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.SelectParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property SelectParameters As ParameterCollection

속성 값

속성에서 지정 SelectMethod 한 메서드에서 사용하는 매개 변수의 컬렉션입니다.

특성

예제

다음 코드 예제에서는 컨트롤을 사용 하 여 단일 데이터 레코드를 ObjectDataSource 검색 하 고 컨트롤에 DetailsView 표시 하는 방법을 보여 줍니다. 컨트롤은 ObjectDataSource 클래스의 메서드를 호출하여 특정 직원 레코드를 GetEmployee 검색합니다 EmployeeLogic . 이 GetEmployee 메서드에는 직원 ID 매개 변수가 필요합니다. 컨트롤은 ObjectDataSource 태그의 QueryStringParameter 요소를 사용하여 URL에서 지정된 쿼리 문자열 매개 변수의 값을 검색하고 메서드에 전달하는 개체를 GetEmployee 만듭니 QueryStringParameter 다.

다른 매개 변수 클래스를 사용하여 컨트롤 속성, 양식 필드, 쿠키, ASP.NET 프로필 데이터 또는 세션 상태와 같은 다른 소스에서 값을 검색할 수 있습니다. 하드 코딩된 값을 select 메서드에 전달하기 위해 태그에 정의된 매개 변수 개체를 사용할 수도 있습니다. 사용할 수 있는 매개 변수 클래스에 대한 자세한 내용은 필터링을 위해 데이터 원본 컨트롤과 함께 매개 변수 사용을 참조하세요.

이 예제를 실행하려면 다음이 필요합니다.

  • Northwind Traders 데이터베이스에 연결하는 이름이 지정된 NorthwindConnection 연결 문자열이 있는 웹 사이트입니다. 자세한 내용은 클래스 개요를 ObjectDataSource 참조하세요.

  • EmployeeLogic 클래스 개요에 대한 ObjectDataSource 코드 예제 중 하나로 표시되는 클래스입니다. 클래스 파일은 App_Code 폴더에 있어야 합니다.

  • 샘플 코드는 .aspx 페이지로 실행할 수 있습니다. 쿼리 문자열 매개 변수 없이 페이지를 요청하면 오류 메시지가 표시됩니다. .aspx 파일 이름 뒤와 같은 ?empid=1 쿼리 문자열을 사용하여 페이지를 요청하는 경우 요청된 직원에 대한 세부 정보가 표시됩니다.

<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ObjectDataSource - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:detailsview
          id="DetailsView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:detailsview>

<!-- Security Note: The ObjectDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetEmployee"
          typename="Samples.AspNet.CS.EmployeeLogic" >
          <selectparameters>
            <asp:querystringparameter name="EmployeeID" querystringfield="empid" defaultvalue="-1" />
          </selectparameters>
        </asp:objectdatasource>

    </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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ObjectDataSource - VB Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:detailsview
          id="DetailsView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:detailsview>

<!-- Security Note: The ObjectDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetEmployee"
          typename="Samples.AspNet.VB.EmployeeLogic" >
          <selectparameters>
            <asp:querystringparameter name="EmployeeID" querystringfield="empid" defaultvalue="-1" />
          </selectparameters>
        </asp:objectdatasource>

    </form>
  </body>
</html>

설명

이 속성은 SelectParameters 컨트롤과 ObjectDataSource 연결된 개체의 ObjectDataSourceView 속성을 가져옵니다SelectParameters.

요소를 사용하여 SelectParameters 선언적으로 또는 이벤트에 대한 처리기에서 프로그래밍 방식으로 컬렉션에 매개 변수 SelectParametersSelecting 추가합니다. 런타임에 요소에 나열된 매개 변수가 SelectParameters 컬렉션에 먼저 추가됩니다. 그러면 컬렉션의 매개 변수가 이벤트에 대한 Selecting 처리기에 의해 추가되거나 제거됩니다. 메서드 Selecting 가 실행되기 전에 Select 이벤트가 발생합니다.

메서드를 Select 실행하기 전에 컬렉션에 포함된 매개 변수의 이름과 형식이 속성에 SelectParameters 지정된 SelectMethod 메서드의 서명과 일치해야 합니다. 예를 들어 명명된 GetEmployeesByStateAndAge select 메서드가 a string 와 정수를 매개 변수로 사용하는 경우 컬렉션에는 두 개의 매개 변수가 SelectParameters 포함되어야 합니다. 첫 번째 매개 변수는 문자열로 확인되어야 하고 두 번째 매개 변수는 정수로 확인되어야 합니다. 요소의 태그에서 두 매개 변수를 SelectParameters 모두 지정할 수 있습니다. 또는 이벤트 처리기에 추가할 Selecting 수도 있고, 한 매개 변수를 태그에 추가할 수도 있고 다른 매개 변수를 프로그래밍 방식으로 추가할 수도 있습니다.

자세한 내용은 ObjectDataSource 컨트롤SelectMethod 속성에 매개 변수 사용을 참조하세요.

중요합니다

이벤트 처리기의 코드 Selecting 또는 속성에서 SelectMethod 지정한 메서드에서 클라이언트에서 받은 매개 변수 값의 유효성을 검사해야 합니다.

적용 대상

추가 정보