À l'aide de entity framework pour ajouter des entités existantes pour une collection sur une entité nouvellement créée

Je suis en utilisant Entity framework pour créer un nouvel ordre. La commande contient un ensemble de contacts, une relation plusieurs-à-plusieurs. Je veux ajouter une référence à un contact existant sur le bon de commande sur la création de l'ordre. À la fois de l'Ordre et de communiquer avec une Entité Objets.

 Order order = new Order();

 //set details on order

 Contact contact = new Contact();

 EntityKey contactKey =
                    new EntityKey("OrderDetails.Contact",
                        "contact_id", contact.Key.Id);

 contact.EntityKey = contactKey;
 contact.contact_id = contact.Key.Id;

 order.Contact.Attach(contact);  //throws an exception!

 OrderDetails ordTable = new OrderDetails();
            ordTable.AddToOrder(order);
            int result = orgTable.SaveChanges();

Quand je vais joindre cette exception est levée:

"Joindre n'est pas une opération valide lorsque la source de l'objet associé à cette fin est un ajout, de la suppression ou de l'état détaché. Les objets chargés à l'aide de la NoTracking option fusion sont toujours détachés."

Je sais que je suis probablement raté une étape ou pas de bien comprendre comment le cadre de l'entité gère plusieurs-à-plusieurs liens.

OriginalL'auteur kirkmcpherson | 2009-01-02