EntityDataSource.AutoGenerateWhereClause Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger ett värde som anger om EntityDataSource kontrollen dynamiskt skapar en WHERE-sats baserat på värden som definierats i WhereParameters samlingen.
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
Egenskapsvärde
trueom kontrollen EntityDataSource skapar WHERE-satsen, annars . false Standardvärdet är false.
Implementeringar
Undantag
När egenskapen AutoGenerateWhereClause är inställd på true och egenskapen Where inte är null.
Exempel
I följande exempel är egenskapen AutoGenerateWhereClause inställd på true. Därför Name måste egenskapen matcha ett egenskapsnamn för entitetstyp som ingår i frågeresultatet. Frågan väljer egenskaperna SalesOrderID och TotalDue för entitetstypen SalesOrderHeader. Den automatiskt genererade WHERE satsen filtrerar frågeresultatet genom att jämföra TotalDue-värdet med ett värde som valts i listrutekontrollen 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>
Som standardvärde är egenskapen inställd på AutoGenerateWhereClausefalse. Det innebär att vi måste tillhandahålla klausulen WHERE . I följande exempel WHERE är Where="it.TotalDue < @totalDueParam" -satsen och totalDueParam är parameternamnet.
<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>
Kommentarer
Om du vill filtrera frågeresultat genom att likställa en entitetstypegenskap med ett uttryck kan du använda AutoGenerateWhereClause egenskapen .
AutoGenerateWhereClause När kontrollens EntityDataSource egenskap är inställd truepå genererar kontrollen automatiskt en WHERE sats från parametrarna i ParameterCollectionWhereParameters egenskapen. Egenskapen Name för varje parameter måste matcha ett egenskapsnamn för entitetstyp som ingår i frågeresultatet. Om du anger AutoGenerateWhereClause egenskapen till truebör du inte uttryckligen tilldela en WHERE -sats Where till egenskapen.