EntityDataSource.Include Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví výraz, který určuje související objekty zahrnout do výsledků dotazu.
public:
property System::String ^ Include { System::String ^ get(); void set(System::String ^ value); };
public string Include { get; set; }
member this.Include : string with get, set
Public Property Include As String
Hodnota vlastnosti
Čárkami oddělený seznam cest dotazů, které se mají vrátit ve výsledcích dotazu.
Příklady
Následující kód XML definuje cestu dotazu, která vrací SalesOrderHeader
objekty související s vráceným Contact
objektem. U každého SalesOrderHeader
objektu se vrátí také související SalesOrderDetail
objekty a Address
objekty.
<asp:EntityDataSource ID="ContactDataSource" runat="server"
AutoGenerateWhereClause="True" ConnectionString="name=AdventureWorksEntities"
DefaultContainerName="AdventureWorksEntities" EnableDelete="True"
EnableInsert="True" EnableUpdate="True" EntitySetName="Contact"
Include="SalesOrderHeader.SalesOrderDetail, SalesOrderHeader.Address">
<WhereParameters>
<asp:ControlParameter ControlID="customerId" Name="ContactID"
PropertyName="Text" />
</WhereParameters>
</asp:EntityDataSource>
Předchozí příklad XML je stejný jako následující ObjectQuery<T> s názvem customers
:
ObjectQuery<Contact> customers =
context.Contact
.Where("it.ContactID = @ContactID",
new ObjectParameter("ContactID", customerId))
.Include("SalesOrderHeader.SalesOrderDetail")
.Include("SalesOrderHeader.Address");
Poznámky
Vlastnost IncludeEntityDataSource ovládacího prvku určuje seznam cest dotazů oddělených čárkami, které definují objekty, které jsou vráceny společně s konkrétně dotazovaným objektem. Každá hodnota oddělená čárkami v řetězci je předána, beze změny, jako samostatné volání Include metody ObjectQuery<T> , která je spuštěna Entity Framework. Tento dotaz je zdrojem dat regulovaných ovládacím EntityDataSource prvku. Vlastnost Include je argument použitý na před ObjectQuery<T> spuštěním.
Řetězec zadaný do Include vlastnosti používá stejný formát jako řetězec, který je předán Include metodě .ObjectQuery<T> Příklady použití cest dotazů k automatickému načtení souvisejících objektů najdete v tématu Postupy: Použití cest dotazů k výsledkům obrazců.
Pokud se Include vlastnost používá k určení cest dotazů, lze vlastnosti souvisejících entit použít pouze pro datové vazby jen pro čtení. Pokud související objekty nejsou explicitně zahrnuty do cesty dotazu, jsou popisovače vlastností stále k dispozici pro datové vazby, ale samotné vlastnosti vrací hodnoty null. V tomto případě musí být související objekty explicitně načteny, aby se zobrazily jejich hodnoty. Další informace najdete v tématu Načítání souvisejících objektů.