共用方式為


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 屬性設定為 trueWhere 屬性不是 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 從屬性(property)中的參數產生子句 ParameterCollection WhereParametersName每個參數的屬性都必須符合查詢結果中包含的實體類型屬性名稱。 如果您將 AutoGenerateWhereClause 屬性設定為 true ,您就不應該將子句明確指派 WHEREWhere 屬性。

適用於