I am trying to update an entity in EF6. I have read that if I wish to change a ForeignKey property, I have to then ensure the Navigation Property is the correct one, or set it to null.
I have taken the set to null approach, but I still receive the Referential Integrity Constraint Exception:
A referential integrity constraint violation occurred: The property value(s) of 'Contact.idContact' on one end of a relationship do not match the property value(s) of 'Entity.id_EntityContactInfo' on the other end.
But you can see in the debugger, that Entity.Contact is null, so I believe this shouldn't be throwing.
Any Ideas?
EDIT
This is how the entity is updated:
public T CommitUpdate<T>(T obj) where T : class
{
_DbContext.Set<T>().Attach(obj);
_DbContext.Entry(obj).State = EntityState.Modified;
_DbContext.Commit();
return obj;
}
Non-Null
– Korwin