EntityDataSource.Include 屬性

定義

取得或設定運算式,這個運算式會指定要包含在查詢結果中的相關物件。

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

屬性值

查詢結果中所傳回之查詢路徑的逗號分隔清單。

範例

下列 XML 標記會定義查詢路徑,以傳回與傳ContactSalesOrderHeader對象相關的物件。 使用每個 SalesOrderHeader時,也會傳回相關的 SalesOrderDetailAddress 物件。

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

先前的 XML 範例與下列 ObjectQuery<T> 名稱 customers相同:

ObjectQuery<Contact> customers =
      context.Contact
       .Where("it.ContactID = @ContactID",
         new ObjectParameter("ContactID", customerId))
        .Include("SalesOrderHeader.SalesOrderDetail")
        .Include("SalesOrderHeader.Address");

備註

Include控件的 EntityDataSource 屬性會指定以逗號分隔的查詢路徑清單,以定義與特定查詢物件一起傳回的物件。 字串中的每個逗號分隔值都會傳遞,而不需修改,做為 Entity Framework 所執行之 方法的ObjectQuery<T>個別呼叫Include。 此查詢是控件所管制 EntityDataSource 之數據的來源。 屬性 Include 是在執行之前套用至 ObjectQuery<T> 的自變數。

提供給 屬性的 Include 字串會使用與傳遞至 Include 方法 ObjectQuery<T>之字串相同的格式。 如需如何使用查詢路徑自動載入相關物件的範例,請參閱 如何:使用查詢路徑來塑造結果

Include當屬性用來指定查詢路徑時,相關實體的屬性只能用於唯讀數據系結。 如果查詢路徑中未明確包含相關物件,則屬性描述元仍可供數據系結使用,但屬性本身會傳回 Null 值。 在此情況下,必須明確載入相關的物件,才能顯示其值。 如需詳細資訊,請參閱載入相關物件

適用於