Partager via


Code d'application avec AssociationSetMapping (Entity Framework)

Le code d'application de cette section montre comment les procédures stockées qui ajoutent ou suppriment des instances d'associations sont utilisées par Entity Framework. Le modèle objet et les procédures stockées utilisés dans l'exemple sont décrits dans Mappage d'ensembles d'associations à des procédures stockées (Entity Framework).

Deux séquences de code de base sont utilisées pour ajouter et supprimer des associations entre des entités existantes.

  • Appelez Add sur l'objet EntityCollection spécifié par un NavigationProperty d'une entité et spécifiez l'objet connexe. Cela fonctionne pour les associations un-à-plusieurs et plusieurs-à-plusieurs.

  • Définissez la propriété Value de l'objet EntityReference sur l'objet connexe. Cela fonctionne pour les associations un-à-un et plusieurs-à-un.

Le code suivant utilise la méthode Add pour créer des associations entre les entités Contact et Address.

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

namespace ContactAddressModFunc
{
    class Program
    {
        static void Main(string[] args)
        {
            using (ContactInformationEntities objCtx =
                              new ContactInformationEntities())
            {
                 for (int i = 1; i < 11; i++)
                 {
                     Contact contact = new Contact();
                     contact.ContactID = i;
                     contact.FirstName = "Contact " + i.ToString();
                     contact.LastName = "LastName " + i.ToString();

                     Address address = new Address();
                     address.AddressID = i;
                     address.StreetAddress = "Street Address " +
                                                 i.ToString();
                     address.City = "Seattle";

                     objCtx.AddToContacts(contact);
                     objCtx.AddToAddresses(address);
                     contact.Address.Add(address);
                     address.Contact.Add(contact);

                    
                 }
                 objCtx.SaveChanges();

                 foreach (Contact contact in objCtx.Contacts)
                 {
                     Console.WriteLine(contact.LastName);
                     contact.Address.Load();
                     foreach (Address address in contact.Address)
                         Console.WriteLine(address.StreetAddress);
                 }

            }

        }
    }
}

Voir aussi

Tâches

Procédure : modifier les relations entre les objets (Entity Framework)

Concepts

Prise en charge des procédures stockées (Entity Framework)
Ajout, modification et suppression d'objets (Entity Framework)