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
Значение свойства
Коллекцию параметров, которые используются для создания предложения 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 во время выполнения. Параметры добавляются в коллекцию WhereParameters , если требуется программно задать одно или несколько условий в предложении Where. Например, можно выполнить поиск в таблице базы данных записей с фамилией, равной TextBox значению элемента управления. В этом случае вы добавите параметр в коллекцию WhereParameters для значения текстового поля.
Если не нужно задавать значение во время выполнения в предложении Where, вам не нужно использовать коллекцию WhereParameters . Вы можете определить поля для получения в свойстве Where . Например, чтобы возвращать значения из таблицы базы данных, где LastName
равно "Адамс" в разметке, задайте Where для свойства 'LastName = "Adams"'
значение без каких-либо параметров.
Чтобы задать значения в WhereParameters коллекции, необходимо назначить имя каждому параметру, а затем добавить заполнитель в Where свойство для этого параметра. В предложении Where предусловите имя каждого параметра с символом @.