Я не могу добавить UserRole в IdentityUser. EF, использующий экземпляры с одинаковым значением ключа - PullRequest
0 голосов
/ 25 июня 2019

Я пытаюсь создать некоторых пользователей в своем приложении, используя IdentityUser. Один человек может иметь несколько пользователей в базе данных. Сначала я сохраняю AspNetUser. Затем, если человек уже не существует в БД, я создаю Человека. После создания человека я выбираю ранее созданного пользователя, добавляю свойство PersonId в его столбец и обновляю запись.

После этих шагов я создаю UserRole, передавая UserId и RoleId. В этот момент я получаю сообщение об ошибке «Экземпляр типа сущности« Пользователь »не может быть отслежен, поскольку другой экземпляр со значением ключа« {Id: xxxxxxx} »уже отслеживается. При присоединении существующих сущностей убедитесь, что только один экземпляр сущности с данное значение ключа прилагается. "

Я читал некоторые другие проблемы по этой проблеме, но ни одна из них не работала. Есть ли решение этой проблемы? Уже пытался изменить состояние на «Отдельно» и другие решения.

Текущая ситуация:

_service.Save(userModel);

var person = _service.SavePerson(personModel);

var user = _service.GetUserByEmail(userModel.Email);

user.PersonId = person.Id;
_service.Update(user);


_service.AddInRole(user);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...