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 предисловите каждое имя параметра с символом @.