Freigeben über


EntityDataSource.AutoGenerateWhereClause Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob das EntityDataSource-Steuerelement anhand von in der WhereParameters-Auflistung definierten Werten dynamisch eine Where-Klausel erstellt, oder legt diesen fest.

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

Eigenschaftswert

Boolean

true, wenn das EntityDataSource-Steuerelement die Where-Klausel erstellt; andernfalls false. Der Standardwert ist false.

Implementiert

Ausnahmen

Wenn die AutoGenerateWhereClause-Eigenschaft auf true festgelegt und die Where-Eigenschaft nicht NULL ist.

Beispiele

Im folgenden Beispiel wird die- AutoGenerateWhereClause Eigenschaft auf festgelegt true . Daher muss die Name der-Eigenschaft mit einem Eigenschaftentyp-Eigenschaftsnamen identisch sein, der in den Abfrage Ergebnissen enthalten ist. Die Abfrage wählt die Eigenschaften SalesOrderID und TotalDue des Entitäts Typs SalesOrderHeader aus. Die automatisch generierte WHERE Klausel filtert die Abfrageergebnisse durch Vergleichen des TotalDue-Werts mit einem Wert, der im Listenfeld-Steuerelement totalduelist ausgewählt ist.

<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>

In der Standardeinstellung ist die AutoGenerateWhereClause-Eigenschaft auf false festgelegt. Dies bedeutet, dass wir die-Klausel bereitstellen müssen WHERE . Im folgenden Beispiel ist die WHERE -Klausel, Where="it.TotalDue < @totalDueParam" und totaldueparam ist der Parameter Name.

<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>

Hinweise

Zum Filtern von Abfrage Ergebnissen durch Zuordnen einer Entitätstyp Eigenschaft zu einem Ausdruck können Sie die- AutoGenerateWhereClause Eigenschaft verwenden. Wenn die- AutoGenerateWhereClause Eigenschaft des- EntityDataSource Steuer Elements auf festgelegt ist true , generiert das-Steuerelement automatisch eine- WHERE Klausel aus den Parametern in der ParameterCollection der- WhereParameters Eigenschaft. Die- Name Eigenschaft jedes Parameters muss mit dem Eigenschaftsnamen eines Entitäts Typs identisch sein, der in den Abfrage Ergebnissen enthalten ist. Wenn Sie die- AutoGenerateWhereClause Eigenschaft auf festlegen true , sollten Sie der Eigenschaft nicht explizit eine- WHERE Klausel zuweisen Where .

Gilt für