LinqDataSource.SelectParameters Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает коллекцию параметров, используемых во время операции извлечения данных.
public:
property System::Web::UI::WebControls::ParameterCollection ^ SelectParameters { 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 SelectParameters { get; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.SelectParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property SelectParameters As ParameterCollection
Значение свойства
Параметры, используемые для создания предложения Select.
- Атрибуты
Примеры
В следующем примере показано, как использовать предоставленное пользователем значение для вычисления значения в возвращаемых данных. Пользователь может ввести значение в текстовом поле, представляющее количество производственных дней. Это значение делится на значение из базы данных, представляющей количество дней для производства продукта. Возвращаемое значение указывает, сколько продуктов можно производить в течение указанного количества дней. Входные данные пользователя включаются в команду Select через коллекцию SelectParameters .
Enter number of manufacturing days:
<asp:TextBox Text="1" ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Refresh" /><br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" DataSourceID="LinqDataSource1">
<Columns>
<asp:boundfield DataField="Name"
HeaderText="Name"
ReadOnly="True"
SortExpression="Name">
</asp:boundfield>
<asp:boundfield DataField="NumberToManufacture"
HeaderText="Number to Manufacture"
ReadOnly="True"
SortExpression="NumberToManufacture">
</asp:boundfield>
</Columns>
</asp:GridView>
<asp:LinqDataSource
ContextTypeName="ExampleDataContext"
TableName="Products"
Where="DaysToManufacture > 0 "
Select="new (Name, @Days / DaysToManufacture As NumberToManufacture)"
ID="LinqDataSource1"
runat="server">
<SelectParameters>
<asp:ControlParameter
Type="Decimal"
Name="Days"
ControlID="TextBox1"
DefaultValue="1" />
</SelectParameters>
</asp:LinqDataSource>
Enter number of manufacturing days:
<asp:TextBox Text="1" ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Refresh" /><br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" DataSourceID="LinqDataSource1">
<Columns>
<asp:boundfield DataField="Name"
HeaderText="Name"
ReadOnly="True"
SortExpression="Name">
</asp:boundfield>
<asp:boundfield DataField="NumberToManufacture"
HeaderText="Number to Manufacture"
ReadOnly="True"
SortExpression="NumberToManufacture">
</asp:boundfield>
</Columns>
</asp:GridView>
<asp:LinqDataSource
ContextTypeName="ExampleDataContext"
TableName="Products"
Where="DaysToManufacture > 0 "
Select="new (Name, @Days / DaysToManufacture As NumberToManufacture)"
ID="LinqDataSource1"
runat="server">
<SelectParameters>
<asp:ControlParameter
Type="Decimal"
Name="Days"
ControlID="TextBox1"
DefaultValue="1" />
</SelectParameters>
</asp:LinqDataSource>
Комментарии
Элемент LinqDataSource управления использует параметры в SelectParameters коллекции для создания предложения Select во время выполнения. Вы добавляете параметры в коллекцию SelectParameters , если вы хотите использовать значения во время выполнения в предложении Select. Например, можно добавить параметр в SelectParameters коллекцию, чтобы представить свойство в профиле пользователя. Затем можно использовать это свойство и значение из источника данных для вычисления нового значения.
Если в предложении Select не требуется задать значение во время выполнения, вам не нужно использовать коллекцию SelectParameters . Вы можете определить свойства, которые необходимо получить в свойстве Select . Например, чтобы вернуть FirstName значения LastName из таблицы базы данных, задайте Select значение FirstName, LastName без каких-либо параметров.
Чтобы задать значения в коллекции, добавьте заполнитель в SelectParametersSelect свойство для именованного параметра. В предложении Select предисловите каждое имя параметра с символом @.
Нельзя использовать параметр в SelectParameters коллекции для представления имени свойства. Чтобы динамически задать Select для свойства имя свойства, создайте обработчик событий для Selecting события и настройте Select свойство по мере необходимости.