EntityCollection<TEntity>.Add(TEntity) Methode

Definitie

Hiermee voegt u een object toe aan de verzameling.

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

Parameters

entity
TEntity

Een object dat moet worden toegevoegd aan de verzameling. entity moet worden geïmplementeerd IEntityWithRelationships.

Implementeringen

Uitzonderingen

entity is null.

Voorbeelden

Dit voorbeeld is gebaseerd op het Adventure Works-verkoopmodel. Als u de code in dit voorbeeld wilt uitvoeren, moet u het AdventureWorks-verkoopmodel al aan uw project hebben toegevoegd en uw project zo configureren dat het Entity Framework wordt gebruikt. U doet dit door de procedures in Hoe u dit doet: Handmatig een Entity Framework-Project en Aanvullen: Handmatig het model en toewijzingsbestanden definiëren.

In dit voorbeeld worden twee nieuwe SalesOrderHeader entiteiten gemaakt, toegevoegd aan de Contact entiteit en wordt na het verwijderen van een object de Add methode gebruikt om het object weer toe te voegen aan de verzameling.

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);
    }
}

Opmerkingen

De Add methode voegt een object toe aan een EntityCollection<TEntity> object en maakt een relatie tussen de twee objecten. Wanneer het bronobject is gekoppeld aan een ObjectContext exemplaar, wordt het Add object ook toegevoegd aan de ObjectContextmethode. Deze bewerking wordt omgezet in een invoegbewerking in de gegevensbron wanneer SaveChanges deze wordt aangeroepen. Zie Objecten maken, toevoegen, wijzigen en verwijderen voor meer informatie.

De Add methode kan meerdere keren worden aangeroepen op hetzelfde objectexemplaren.

Van toepassing op