Esta documentación está archivada y no tiene mantenimiento.

Cómo: Consultar una entidad asignada a tablas independientes

Cuando se usan datos heredados en un modelo conceptual, a veces es útil poder asignar una sola entidad a dos tablas de la base de datos. Esto se puede hacer cuando dos tablas comparten una clave común, como en el caso de las tablas Customer y Store de la base de datos de ejemplo AdventureWorks que se incluye con SQL Server 2005.

El código del ejemplo de este tema usa el modelo conceptual definido en el tema Cómo: Definir un modelo con una única entidad asignada a dos tablas. La ejecución de consultas de objeto en una entidad asignada a dos tablas es idéntica a la consulta de otras entidades. La asignación no afecta a la sintaxis del código.

Para crear el proyecto usando una entidad asignada a tablas independientes

  1. Cree una aplicación de consola.

  2. Agregue una referencia al modelo conceptual definido en Cómo: Definir un modelo con una única entidad asignada a dos tablas.

  3. Agregue referencias a System.Data.Entity y System.Runtime.Serialization.

  4. Agregue la directiva de preprocesador para el modelo AdventureWorksModel implementado en Cómo: Definir un modelo con una única entidad asignada a dos tablas.

Ejemplo

La entidad asignada a tablas independientes de este ejemplo se puede usar para enumerar los resultados en un bucle foreach. El código siguiente muestra las propiedades de ambas tablas de la asignación de entidad Store.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AdventureWorksModel;

namespace ClientStoreCustomerSplit
{
    class Program
    {
        static void Main(string[] args)
        {
            using (AdventureWorksEntities objCtx = new AdventureWorksEntities())
            {
                foreach (Store store in objCtx.Store)
                    Console.WriteLine("CustomerId: {0} Name: {1} \r\n\t" +
                    "Account#: {2} SalespersonId: {3}",
                        store.CustomerID, store.Name, 
                        store.AccountNumber, store.SalesPersonID );
            }
        }
    }
}

Vea también

Mostrar: