LinqDataSource.WhereParameters 속성

정의

Where 절을 만드는 데 사용되는 매개 변수 컬렉션을 가져옵니다.

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

속성 값

ParameterCollection

Where 속성에서 Where 절을 만드는 데 사용되는 매개 변수 컬렉션입니다.

구현

특성

예제

다음 예제에서는 컬렉션을 사용하여 WhereParameters Where 절을 동적으로 만드는 방법을 보여 줍니다. 컨트롤에서 LinqDataSource 사용자가 선택한 값 Price 보다 큰 값이 열에 있는 모든 레코드를 DropDownList 반환합니다.

<asp:DropDownList AutoPostBack="true" ID="DropDownList1" runat="server">
    <asp:ListItem Value="0"></asp:ListItem>
    <asp:ListItem Value="25"></asp:ListItem>
    <asp:ListItem Value="100"></asp:ListItem>
    <asp:ListItem Value="400"></asp:ListItem>
</asp:DropDownList>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    Where="Price>@UserPrice"
    ID="LinqDataSource1" 
    runat="server">
    <WhereParameters>
        <asp:ControlParameter 
            Name="UserPrice" 
            DefaultValue="0" 
            ControlID="DropDownList1" 
            Type="Int32" />
    </WhereParameters>
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>
<asp:DropDownList AutoPostBack="true" ID="DropDownList1" runat="server">
    <asp:ListItem Value="0"></asp:ListItem>
    <asp:ListItem Value="25"></asp:ListItem>
    <asp:ListItem Value="100"></asp:ListItem>
    <asp:ListItem Value="400"></asp:ListItem>
</asp:DropDownList>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    Where="Price > @UserPrice"
    ID="LinqDataSource1" 
    runat="server">
    <WhereParameters>
        <asp:ControlParameter 
            Name="UserPrice" 
            DefaultValue="0" 
            ControlID="DropDownList1" 
            Type="Int32" />
    </WhereParameters>
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>

설명

컨트롤은 LinqDataSource 컬렉션의 매개 변수를 WhereParameters 사용하여 런타임에 Where 절을 만듭니다. Where 절에서 WhereParameters 하나 이상의 조건을 프로그래밍 방식으로 설정하려는 경우 컬렉션에 매개 변수를 추가합니다. 예를 들어 데이터베이스 테이블에서 컨트롤 값 TextBox 과 같은 이름의 레코드를 검색할 수 있습니다. 이 경우 텍스트 상자 값에 대한 매개 변수를 WhereParameters 컬렉션에 추가합니다.

Where 절에서 런타임에 값을 설정할 필요가 없는 경우 컬렉션을 사용할 WhereParameters 필요가 없습니다. 속성에서 Where 검색할 필드를 정의할 수 있습니다. 예를 들어 태그에서 "Adams"가 같은 LastName 데이터베이스 테이블의 값을 반환하려면 매개 변수 없이 속성을 'LastName = "Adams"' 설정합니다Where.

컬렉션에서 WhereParameters 값을 설정하려면 각 매개 변수에 이름을 할당한 다음 해당 매개 변수의 Where 속성에 자리 표시자를 추가합니다. Where 절에서 각 매개 변수 이름 앞에 @ 기호를 옵니다.

적용 대상