The value of a property that is part of an object's key does not match the corresponding property value stored in the ObjectContext. ...

The value of a property that is part of an object's key does not match the corresponding property value stored in the ObjectContext.  This can occur if properties that are part of the key return inconsistent or incorrect values or if DetectChanges is not called after changes are made to a property that is part of the key.