The new me9
New member
עדכון עם EF מפר הגבלת PK
אני יוצר אובייקט EF חדש.
אני רוצה לעדכן בעזרתו רשומה מסוימת בDB
אני נעזר בקוד הבא:
public MamConfiguration_V1 Save(MamConfiguration_V1 item)
{
item.ThrowIfNull("item");
mMaMDBEntities.MamConfiguration_V1.AddObject(item);
mMaMDBEntities.ObjectStateManager.ChangeObjectState(item, System.Data.EntityState.Modified);
mMaMDBEntities.SaveChanges();
return item;
}
לצערי השורה
mMaMDBEntities.MamConfiguration_V1.AddObject(item);
עושה בעיות כי בהכנסה שלה נפגע חוק ייחודיות של השורה הזו (שלשיה מרכיבה את הPK והוא מופר)
אך למעשה אני רוצה לעדכן שורה קיימת ולא להוסיף חדשה- כך שאני לא מתכנן לשבור את ההגבלה על ייחודיות
איך לשנות את הקוד הנ"ל כדי לא ליפול על זה?
יש דרך בלי לשאוב את האובייקט מהDB, לעדכן שדה שדה שלו באופן ידני ואז לשמור שינויים?
קל לי למלא אובייקט חדש ע"ב המידע שחוזר מהUI
כי זה משהו שאני כבר עושה בפעולה save.
אני יוצר אובייקט EF חדש.
אני רוצה לעדכן בעזרתו רשומה מסוימת בDB
אני נעזר בקוד הבא:
public MamConfiguration_V1 Save(MamConfiguration_V1 item)
{
item.ThrowIfNull("item");
mMaMDBEntities.MamConfiguration_V1.AddObject(item);
mMaMDBEntities.ObjectStateManager.ChangeObjectState(item, System.Data.EntityState.Modified);
mMaMDBEntities.SaveChanges();
return item;
}
לצערי השורה
mMaMDBEntities.MamConfiguration_V1.AddObject(item);
עושה בעיות כי בהכנסה שלה נפגע חוק ייחודיות של השורה הזו (שלשיה מרכיבה את הPK והוא מופר)
אך למעשה אני רוצה לעדכן שורה קיימת ולא להוסיף חדשה- כך שאני לא מתכנן לשבור את ההגבלה על ייחודיות
איך לשנות את הקוד הנ"ל כדי לא ליפול על זה?
יש דרך בלי לשאוב את האובייקט מהDB, לעדכן שדה שדה שלו באופן ידני ואז לשמור שינויים?
קל לי למלא אובייקט חדש ע"ב המידע שחוזר מהUI
כי זה משהו שאני כבר עושה בפעולה save.