Поделиться через


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 свойство по мере необходимости.

Применяется к