EntityCollection<TEntity>.Add(TEntity) Méthode

Définition

Ajoute un objet à la collection.

public:
 virtual void Add(TEntity entity);
public void Add(TEntity entity);
override this.Add : 'Entity -> unit
Public Sub Add (entity As TEntity)

Paramètres

entity
TEntity

Objet à ajouter à la collection. entity doit implémenter IEntityWithRelationships.

Implémente

Exceptions

entity a la valeur null.

Exemples

Cet exemple est basé sur le modèle de vente Adventure Works. Pour exécuter le code dans cet exemple, vous devez avoir déjà ajouté le modèle de vente AdventureWorks à votre projet et configuré votre projet pour utiliser Entity Framework. Pour ce faire, suivez les procédures de How to : Configurez manuellement entity Framework Project et How to : Define the Model and Mapping Files.

Cet exemple crée deux nouvelles SalesOrderHeader entités, les ajoute à l’entité Contact et, après avoir supprimé un objet, utilise la Add méthode pour ajouter l’objet à la collection.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    Contact contact = new Contact();

    // Create a new SalesOrderHeader.
    SalesOrderHeader newSalesOrder1 = new SalesOrderHeader();
    // Add SalesOrderHeader to the Contact.
    contact.SalesOrderHeaders.Add(newSalesOrder1);

    // Create another SalesOrderHeader.
    SalesOrderHeader newSalesOrder2 = new SalesOrderHeader();
    // Add SalesOrderHeader to the Contact.
    contact.SalesOrderHeaders.Add(newSalesOrder2);

    // Get all related ends
    IEnumerable<IRelatedEnd> relEnds =
        ((IEntityWithRelationships)contact)
        .RelationshipManager.GetAllRelatedEnds();

    foreach (IRelatedEnd relEnd in relEnds)
    {
        // Get Entity Collection from related end
        EntityCollection<SalesOrderHeader> entityCollection =
            (EntityCollection<SalesOrderHeader>)relEnd;

        Console.WriteLine("EntityCollection count: {0}",
            entityCollection.Count);
        // Remove the first entity object.
        entityCollection.Remove(newSalesOrder1);

        bool contains = entityCollection.Contains(newSalesOrder1);

        // Write the number of items after one entity has been removed
        Console.WriteLine("EntityCollection count after one entity has been removed: {0}",
            entityCollection.Count);

        if (!contains)
            Console.WriteLine("The removed entity is not in in the collection any more.");

        //Use IRelatedEnd to add the entity back.
        relEnd.Add(newSalesOrder1);
        Console.WriteLine("EntityCollection count after an entity has been added again: {0}",
            entityCollection.Count);
    }
}

Remarques

La Add méthode ajoute un objet à un EntityCollection<TEntity> objet et crée une relation entre les deux objets. Lorsque l’objet source est attaché à une ObjectContext instance, la Add méthode ajoute également l’objet au ObjectContext. Cette opération est traduite en une opération d’insertion dans la source de données quand elle SaveChanges est appelée. Pour plus d’informations, consultez Création, ajout, modification et suppression d’objets.

La Add méthode peut être appelée plusieurs fois sur la même instance d’objet.

S’applique à