Cómo: crear una asociación entre clases LINQ to SQL (Object Relational Designer)How to: Create an association between LINQ to SQL classes (O/R Designer)

Las asociaciones entre clases de entidades en LINQ to SQLLINQ to SQL son similares a las relaciones entre tablas en una base de datos.Associations between entity classes in LINQ to SQLLINQ to SQL are analogous to relationships between tables in a database. Puede crear asociaciones entre las clases de entidad mediante el Editor de asociaciones cuadro de diálogo.You can create associations between entity classes by using the Association Editor dialog box.

Debe seleccionar una clase primaria y otra secundaria cuando se usa el Editor de asociaciones cuadro de diálogo para crear una asociación.You must select a parent class and child class when you use the Association Editor dialog box to create an association. La clase primaria es la clase de entidad que contiene la clave principal y la clase secundaria es la clase de entidad que contiene la clave externa.The parent class is the entity class that contains the primary key; the child class is the entity class that contains the foreign-key. Por ejemplo, si se crearon clases de entidad que se asignan a la Northwind Customers y Orders tablas, el Customer clase sería la clase primaria y la Order clase sería la clase secundaria.For example, if entity classes were created that map to the Northwind Customers and Orders tables, the Customer class would be the parent class and the Order class would be the child class.

Note

Al arrastrar las tablas de Explorador de servidores o Database Explorer hasta la Object Relational Designer (Object Relational Designer), las asociaciones se crean automáticamente en función de las relaciones de clave externa existentes en la base de datos.When you drag tables from Server Explorer or Database Explorer onto the Object Relational Designer (O/R Designer), associations are automatically created based on the existing foreign-key relationships in the database.

Propiedades de la asociaciónAssociation properties

Después de crear una asociación, al seleccionar la asociación en el Object Relational Designer, hay algunas propiedades configurables en el propiedades ventana.After you create an association, when you select the association in the O/R Designer, there are some configurable properties in the Properties window. (La asociación es la línea entre las clases relacionadas). En la tabla siguiente, se proporcionan descripciones de las propiedades de una asociación.(The association is the line between the related classes.) The following table provides descriptions for the properties of an association.

PropiedadProperty DescripciónDescription
cardinalidadCardinality Controla si la asociación es de uno a varios o de uno a uno.Controls whether the association is one-to-many or one-to-one.
Propiedad secundariaChild Property Especifica si se debe crear una propiedad en el registro primario que es una colección o se debe hacer referencia a los registros secundarios en el lado de las claves externas de la asociación.Specifies whether to create a property on the parent that is a collection or reference to the child records on the foreign-key side of the association. Por ejemplo, en la asociación entre Customer y Order, si la propiedad secundaria está establecido en True, una propiedad denominada Orders se crea en la clase primaria.For example, in the association between Customer and Order, if the Child Property is set to True, a property named Orders is created on the parent class.
Propiedad primariaParent Property La propiedad de la clase secundaria que hace referencia a la clase primaria asociada.The property on the child class that references the associated parent class. Por ejemplo, en la asociación entre Customer y Order, una propiedad denominada Customer que hace referencia al cliente asociado para un pedido se crea en el Order clase.For example, in the association between Customer and Order, a property named Customer that references the associated customer for an order is created on the Order class.
Propiedades de participantesParticipating Properties Muestra las propiedades de asociación y proporciona un puntos suspensivos botón (…) que abre de nuevo el Editor de asociaciones cuadro de diálogo.Displays the association properties and provides an ellipsis button (...) that re-opens the Association Editor dialog box.
únicoUnique Especifica si las columnas de destino externas tienen una restricción de unicidad.Specifies whether the foreign target columns have a uniqueness constraint.

Para crear una asociación entre clases de entidadTo create an association between entity classes

  1. Haga clic en la clase de entidad que representa la clase primaria de la asociación, seleccione agregary, a continuación, haga clic en asociación.Right-click the entity class that represents the parent class in the association, point to Add, and then click Association.

  2. Compruebe que el valor correcto clase primaria está seleccionado en el Editor de asociaciones cuadro de diálogo.Verify that the correct Parent Class is selected in the Association Editor dialog box.

  3. Seleccione el clase secundaria en el cuadro combinado.Select the Child Class in the combo box.

  4. Seleccione el propiedades de la asociación que relacionan las clases.Select the Association Properties that relate the classes. Por lo general, se asigna a la relación entre claves externas definida en la base de datos.Typically, this maps to the foreign-key relationship defined in the database. Por ejemplo, en el Customers y Orders asociación, el propiedades de la asociación son el CustomerID para cada clase.For example, in the Customers and Orders association, the Association Properties are the CustomerID for each class.

  5. Haga clic en Aceptar para crear la asociación.Click OK to create the association.

Vea tambiénSee also