Udostępnij za pośrednictwem


LinqDataSource.WhereParameters Właściwość

Definicja

Pobiera kolekcję parametrów używanych do utworzenia klauzuli 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

Wartość właściwości

Kolekcja parametrów używanych do tworzenia klauzuli Where we Where właściwości .

Implementuje

Atrybuty

Przykłady

W poniższym przykładzie pokazano, jak używać WhereParameters kolekcji do dynamicznego tworzenia klauzuli Where. Kontrolka LinqDataSource zwraca wszystkie rekordy z wartością w Price kolumnie, która jest większa niż wartość wybrana przez użytkownika w kontrolce 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>

Uwagi

Kontrolka LinqDataSource używa parametrów w WhereParameters kolekcji do utworzenia klauzuli Where w czasie wykonywania. Parametry są dodawane do WhereParameters kolekcji, gdy chcesz programowo ustawić jeden lub więcej warunków w klauzuli Where. Na przykład możesz wyszukać w tabeli bazy danych rekordy o ostatniej nazwie równej TextBox wartości kontrolki. W takim przypadku należy dodać parametr do WhereParameters kolekcji dla wartości pola tekstowego.

Jeśli nie musisz ustawiać wartości w czasie wykonywania w klauzuli Where, nie musisz używać kolekcji WhereParameters . Możesz zdefiniować pola do pobrania we Where właściwości . Na przykład, aby zwrócić wartości z tabeli bazy danych, gdzie LastName równa się "Adams" w adiustacji, ustaw Where właściwość na 'LastName = "Adams"' bez żadnych parametrów.

Aby ustawić wartości w WhereParameters kolekcji, należy przypisać nazwę do każdego parametru, a następnie dodać symbol zastępczy we właściwości dla tego parametru Where . W klauzuli Where należy poprzedać każdą nazwę parametru symbolem @.

Dotyczy