次の方法で共有


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 句を作成します。 Select 句で SelectParameters 実行時の値を使用する場合は、コレクションにパラメーターを追加します。 たとえば、ユーザーのプロファイルのプロパティを表すパラメーター SelectParameters をコレクションに追加できます。 その後、そのプロパティとデータ ソースの値を使用して、新しい値を計算できます。

Select 句で実行時に値を設定する必要がない場合は、コレクションを SelectParameters 使用する必要はありません。 プロパティで取得するプロパティを Select 定義できます。 たとえば、データベース テーブルから と LastNameFirstName値を返すには、パラメーターを指定せずに "FirstName, LastName" に設定Selectします。

コレクション内の値を SelectParameters 設定するには、名前付きパラメーターの プロパティに Select プレースホルダーを追加します。 Select 句で、各パラメーター名の先頭に @ 記号を付けます。

コレクション内の SelectParameters パラメーターを使用してプロパティ名を表すことはできません。 プロパティを Select プロパティの名前に動的に設定するには、イベントのイベント ハンドラーを Selecting 作成し、必要に応じて プロパティを Select カスタマイズします。

適用対象