EntityDataSource.Include Propiedad

Definición

Obtiene o establece la expresión que especifica los objetos relacionados que se incluyen en los resultados de la consulta.

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

Valor de propiedad

String

Lista de rutas de consulta separadas por comas que se devuelve en los resultados de la consulta.

Ejemplos

El marcado XML siguiente define una ruta de acceso de consulta que devuelve SalesOrderHeader objetos relacionados con el objeto devuelto Contact . Con cada uno de ellos SalesOrderHeader , SalesOrderDetail Address también se devuelven los objetos y relacionados.

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

El ejemplo de XML anterior es el mismo que el ObjectQuery<T> siguiente customers :

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

Comentarios

La Include propiedad del EntityDataSource control especifica una lista separada por comas de rutas de acceso de consulta que definen los objetos que se devuelven junto con el objeto consultado específicamente. Cada valor separado por comas de la cadena se pasa, sin modificaciones, como una llamada independiente al Include método de ObjectQuery<T> que ejecuta el Entity Framework. Esta consulta es el origen de los datos regulados por el EntityDataSource control. La Include propiedad es el argumento que se aplica a ObjectQuery<T> antes de que se ejecute.

La cadena proporcionada a la Include propiedad utiliza el mismo formato que la cadena que se pasa al Include método de ObjectQuery<T> . Para obtener ejemplos de cómo usar rutas de acceso de consulta para cargar automáticamente objetos relacionados, consulte Cómo: usar rutas de acceso de consulta para dar forma a los resultados.

Cuando Include se usa la propiedad para especificar rutas de acceso de consulta, las propiedades de las entidades relacionadas solo se pueden usar para el enlace de datos de solo lectura. Si los objetos relacionados no se incluyen explícitamente en la ruta de acceso de la consulta, los descriptores de propiedad siguen estando disponibles para el enlace de datos, pero las propias propiedades devuelven valores NULL. En este caso, los objetos relacionados se deben cargar explícitamente para mostrar sus valores. Para obtener más información, vea cargar objetos relacionados.

Se aplica a