Это исключение возникает, когда у вас есть два разных экземпляра одного и того же объекта в вашем графе объектов.Это исключение также встречается в STE, но для этого есть обходной путь.
По сути, у вас есть два объекта (POCO), каждый из которых имеет отношение к третьему объекту.Когда вы попытаетесь связать первый объект со вторым и попытаться сохранить его в контексте объекта, оба объекта будут иметь отдельный экземпляр третьего, и именно в этом и заключается ошибка.
Работа-вокруг:
Прежде чем связывать две сущности, попробуйте объединить любые связанные сущности.Это связано с тем, что контексту сущности не требуется принимать решение о том, какой экземпляр «общей сущности» сохраняться.
Пример:
A, (B1, B2), C являются сущностями.
A - B1
C - B2
A - B1 - C
В этом сценарии, B1 и B2 - оба объекта B, просто разные экземпляры (может быть из-за разных обращений к хранилищу данных в разных контекстах).Если вы хотите связать A и C, вы должны удалить B2 и связать C с B1.