EntityDataSource.AutoGenerateWhereClause Eigenschap

Definitie

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het EntityDataSource besturingselement dynamisch een WHERE-component maakt op basis van waarden die in de WhereParameters verzameling zijn gedefinieerd.

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

Waarde van eigenschap

true als het EntityDataSource besturingselement de WHERE-component maakt; falseanders. De standaardwaarde is false.

Implementeringen

Uitzonderingen

Wanneer de AutoGenerateWhereClause eigenschap is ingesteld op true en de Where eigenschap niet null is.

Voorbeelden

In het volgende voorbeeld is de AutoGenerateWhereClause eigenschap ingesteld op true. Daarom moet de eigenschap overeenkomen met de Name naam van een eigenschap van het entiteitstype die is opgenomen in de queryresultaten. De query selecteert de eigenschappen SalesOrderID en TotalDue van het entiteitstype SalesOrderHeader. De automatisch gegenereerde WHERE component filtert de queryresultaten door de TotalDue-waarde te vergelijken met een waarde die is geselecteerd in het keuzelijstbesturingselement 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>

De eigenschap is standaard AutoGenerateWhereClause ingesteld op false. Dit betekent dat we de WHERE component moeten leveren. In het volgende voorbeeld is de WHERE component en Where="it.TotalDue < @totalDueParam" totalDueParam de parameternaam.

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

Opmerkingen

Als u queryresultaten wilt filteren door een eigenschap van het entiteitstype te vergelijken met een expressie, kunt u de AutoGenerateWhereClause eigenschap gebruiken. Wanneer de AutoGenerateWhereClause eigenschap van het EntityDataSource besturingselement is ingesteld optrue, genereert het besturingselement automatisch een WHERE component van de parameters in de ParameterCollectionWhereParameters eigenschap. De Name eigenschap van elke parameter moet overeenkomen met de eigenschapsnaam van een entiteitstype die is opgenomen in de queryresultaten. Als u de AutoGenerateWhereClause eigenschap trueinstelt op, moet u niet expliciet een WHERE component aan de Where eigenschap toewijzen.

Van toepassing op