2009-07-03 15 views
1

Ich habe eine Entität, die ein Kind hat, und ich muss es aktualisieren, aber in der TryUpdateModel-Methode akzeptiert es kein stark typisiertes Objekt (akzeptiert nur eine FormCollection) und wann Ich versuche es zu aktualisieren, ich bekomme den folgenden Fehler.Entity Framework - Entität mit untergeordneten Eigenschaften aktualisieren

{ „Eine Beziehung von einem‚FK__SG_Usuari__ID_Si__534D60F1‘AssociationSet hinzugefügt oder gelöscht wird. Mit Kardinalität Einschränkungen ist eine entsprechende‚SG_Usuario‘auch hinzugefügt oder gelöscht werden müssen.“}

Das Problem ist, dass ich nicht Laden Sie in der Formsammlung die Child-Eigenschaft, nur eine ID, aber nicht das gesamte Objekt.

+0

Bitte zeigen Sie den Code, der das Problem verursacht, sagen Sie, ob es zur Laufzeit oder zur Entwurfszeit passiert, und veröffentlichen Sie die vollständige Ausnahme mit allen InnerException- und Stack-Traces. Veröffentlichen Sie die Ergebnisse von ex.ToString() –

Antwort

0

Sie können direkt Update vom Modell in Entity Framework klicken und es wird die enitty mit der ganzen Beziehung

0

die „create“ Anweisung ist wie folgt automatisch aktualisiert:

public ActionResult Edit(FormCollection form) 
    { 

     Usuario usuario = new Usuario 
      { 
       NomeUsuario = form["Usuario.NomeUsuario"], 
       IdeUsuario = form["Usuario.IdeUsuario"], 
       NumRegistroRM = form["Usuario.NumRegistroRM"], 
       SenUsuario = form["Usuario.SenUsuario"], 
       SituacaoUsuario = this.SituacaoUsuarioService.GetSituacaoUsuario(x => x.ID_SituacaoUsuario == Convert.ToInt32(form["Usuario.SituacaoUsuario"]// note that i have to retrieive the entire object... the "child" 

      }; 

     this.UsuarioService.AddUsuario(usuario); 
    } 

die Bearbeitungs Anweisung sein sollte wie folgt aus: vor kurzem

TryUpdateModel(a, "Usuario", this.GetUsuarioWhiteList(), form.ToValueProvider()); // but the form contains only the id and I can't load the child in it nor pass the object. 
0

hatte ich das gleiche Problem und ich es geschafft, es zu lösen, wenn ich die Mächtigkeit Verhältnisse für meine Fremdschlüssel in der ch geändert ild Tabelle von 1: viele bis 0..1: viele in der Entity Designer und es hat gut funktioniert.

Verwandte Themen