次の方法で共有


EntityDataSource.AutoGenerateWhereClause プロパティ

定義

EntityDataSource コントロールが WhereParameters コレクションに定義された値に基づいて WHERE 句を動的に作成するかどうかを示す値を取得または設定します。

public:
 property bool AutoGenerateWhereClause { bool get(); void set(bool value); };
public bool AutoGenerateWhereClause { get; set; }
member this.AutoGenerateWhereClause : bool with get, set
Public Property AutoGenerateWhereClause As Boolean

プロパティ値

Boolean

EntityDataSource コントロールが WHERE 句を作成する場合は true。それ以外の場合は false。 既定値は false です。

実装

例外

AutoGenerateWhereClause プロパティが true に設定されており、Where プロパティが null でない場合。

次の例で AutoGenerateWhereClause は、プロパティがに設定されて true います。 したがって、 Name プロパティのは、クエリ結果に含まれるエンティティ型のプロパティ名と一致する必要があります。 このクエリでは、SalesOrderHeader エンティティ型の SalesOrderID プロパティと TotalDue プロパティを選択します。 自動的に生成された句は、 WHERE TotalDue 値を TotalDueList リストボックスコントロールで選択された値と比較することによって、クエリ結果をフィルター処理します。

<asp:EntityDataSource ID="SalesOrderHeaderWithAutoParam" runat="server"
   ConnectionString="name=AdventureWorksEntities"
   DefaultContainerName="AdventureWorksEntities"
   EntitySetName="SalesOrderHeaders"
   Select="it.SalesOrderID, it.TotalDue"
    AutoGenerateWhereClause="True">
    <WhereParameters>
        <asp:ControlParameter ControlID="TotalDueList"
           Name="TotalDue" PropertyName="SelectedValue" DbType="Decimal" />
    </WhereParameters>
</asp:EntityDataSource>

既定では、AutoGenerateWhereClause プロパティは false に設定されます。 これは、句を指定する必要があることを意味 WHERE します。 次の例では、 WHERE 句はで、 Where="it.TotalDue < @totalDueParam" totalDueParam はパラメーター名です。

<asp:EntityDataSource ID="SalesOrderHeaderWithOutAutoParam" runat="server"
   ConnectionString="name=AdventureWorksEntities"
   DefaultContainerName="AdventureWorksEntities"
   EntitySetName="SalesOrderHeaders"
   Where="it.TotalDue < @totalDueParam"
    Select="it.SalesOrderID, it.TotalDue">
    <WhereParameters>
        <asp:ControlParameter ControlID="TotalDueList"
           Name="totalDueParam" PropertyName="SelectedValue" DbType="Decimal" />
    </WhereParameters>
</asp:EntityDataSource>

注釈

エンティティ型のプロパティを式にひずみしてクエリ結果をフィルター処理するには、プロパティを使用し AutoGenerateWhereClause ます。 AutoGenerateWhereClauseコントロールのプロパティ EntityDataSource がに設定されている場合 true 、コントロールは、 WHERE プロパティの内のパラメーターから句を自動的に生成 ParameterCollection WhereParameters します。 Name各パラメーターのプロパティは、クエリ結果に含まれるエンティティ型のプロパティ名と一致する必要があります。 プロパティをに設定する場合は、 AutoGenerateWhereClause true 明示的に句をプロパティに割り当てないようにしてください WHERE Where

適用対象