2010-03-11 4 views
0

Je suis en train de le faire:cadre d'entité à insérer un grand nombre à plusieurs entre deux objets existants en mettant à jour

using(var context = new SampleEntities()) 
{ 
    User user = select a user from database; 

    //Update user's properties 
    user.Username = ... 
    user.Website = ... 

    //Add a role 
    Role role = select a role from database 
    //trying to insert into table UserRoles which has columns (UserID, RoleID) 
    user.Roles.Add(role); 

    //Apply property changes 
    context.ApplyPropertyChanges("Users", user); 
    context.SaveChanges(); 
} 

Cependant, je reçois une exception en me disant que « l'objet existant dans le ObjectContext est dans l'état Ajouté "et ne peut pas" ApplyPropertyChanges ". Si "ApplyPropertyChanges()" est supprimé, il ajoute un utilisateur.

Dans quel ordre ces méthodes devraient-elles être appelées? Je n'ai pas besoin de les faire séparément, n'est-ce pas? Merci.

Répondre

1

Il ne me semble pas que votre objet Utilisateur est détaché, donc vous ne devriez pas avoir besoin d'appeler ApplyPropertyChanges().

+0

A droite, la réponse m'a amené à trouver mon erreur, merci. – redbluegreen

+0

@redbluegreen Si vous trouvez une réponse à votre question, veuillez l'afficher afin que d'autres puissent en bénéficier. – Andrew

Questions connexes