Hallo im Betrieb zu aktualisieren versuchen, aber während der Aktualisierung es Fehler zeigt, in der Nähe von db. Änderungen speichern().„Verletzung von PRIMARY KEY-Einschränkung‚PK__UserRights__0155B971‘. Kann doppelten Schlüssel in Objekt‚dbo.UserRights‘eingefügt werden. Fehler
seine zeigt die Fehler, die
eine Ausnahme vom Typ erwähnen unten ist ‚System.Data.Entity.Infrastructure.DbUpdateException‘ aufgetreten in EntityFramework.dll wurde aber nicht in Benutzercode behandelt
Also ich in innere Ausnahme gesucht Es zeigt den folgenden Fehler an:
"Verletzung der PRIMARY KEY-Einschränkung 'PK__UserRights__0155B971'. . Kann keinen doppelten Schlüssel in Objekt 'dbo.UserRights' \ r \ nDie Anweisung beendet worden ist "}
Mein Controller-Code
public ActionResult UsetBasedAuthenticationEditSave(UserAuthenticationViewModel objuavm)
{
ViewBag.UserID = new SelectList(db.UserDetails, "UserID", "UserName", objuavm.UserID);
ViewBag.ModuleID = new SelectList(db.UserModules, "ModuleID", "ModuleName", objuavm.ModuleID);
ViewBag.SubModule = new SelectList(db.UserModules, "SubModule", "SubModule", objuavm.SubModule);
var objuserrightsresult = db.UserRights.Find(objuavm.UserRitsID);
if(objuserrightsresult!=null)
{
objuserrightsresult.UserID = objuavm.UserID;
objuserrightsresult. ModuleID = objuavm.ModuleID;
objuserrightsresult. Toview = Convert.ToBoolean(objuavm.Toview);
objuserrightsresult. ToAdd = Convert.ToBoolean(objuavm.ToAdd);
objuserrightsresult. ToEdit = Convert.ToBoolean(objuavm.ToEdit);
objuserrightsresult. ToDelete = Convert.ToBoolean(objuavm.ToDelete);
objuserrightsresult.IsActive = Convert.ToBoolean(objuavm.IsActive);
objuserrightsresult.IsDeleted = Convert.ToBoolean(objuavm.IsDeleted);
objuserrightsresult. EditedDate = DateTime.Now;
objuserrightsresult. LastActiveOn = DateTime.Now;
objuserrightsresult. RowID = Guid.NewGuid();
objuserrightsresult. CreatedSeesionID = Guid.NewGuid();
objuserrightsresult. EditedSessionID = Guid.NewGuid();
objuserrightsresult. OfflineMode = false;
objuserrightsresult.OfflineID = Guid.NewGuid();
objuserrightsresult.SubModule = objuavm.SubModule;
db.UserRights.Add(objuserrightsresult);
}
db.SaveChanges();
return RedirectToAction("UserBasedAuthenticationIndex");
}
Sie eine vorhandene Entität hinzufügen.Sie müssen nur aktualisieren (entfernen Sie die Zeile 'db.Use rRights.Add (objuserrightsresult); ') –
ok stephen kann ich einen Versuch haben – Susan
Stephen seine Arbeit können Sie mir erklären, welchen Fehler ich gemacht habe – Susan