postonoh Ответов: 1

как сделать вставку в несколько таблиц с помощью entityframework


Я использую веб-приложение членства в ролях. Я создаю пользовательский поставщик ролей и поставщик членства. Моя страница регистрации работает отлично. Я собираю всю необходимую информацию с момента регистрации. Я вхожу в бэк-офис и назначаю пользователю соответствующую роль.

Мои столики пользователей, ролей, userinroles, врачей, пациентов, мед, поведения,и рецензентов.

userinrole имеет fk для пользователя и ролей
рецензент имеет fk для пользователя и userinroles
врачи имеют доступ к пользователю, userinroles и рецензентам
пациенты обратились к врачам
медицина, поведение, оценка и медикаментозное лечение имеют отношение к пациентам

На данный момент у нас есть только один рецензент, так что мы можем назначить всех врачей.
Мне нужно знать, как это сделать, и убедиться, что, когда врач заполняет форму пациента, он вставляет врача, который является идентификатором входа в систему, в список пациентов fk for doctors и все пациенты fk for были необходимы.

Я пробовал это, но получал ошибку.

частные структуры БД = новый лиц();



дБ.AddToPatients(пациентов);
дБ.AddToMedical(медицинская);
и так далее.

дБ.Метод SaveChanges();

Я

получение сообщения об ошибке
Оператор INSERT конфликтует с ограничением внешнего ключа \ " FK_Patients_Doctors\". Конфликт произошел в базе данных \ " db\", таблице \ " dbo. Doctors\", столбце 'DoctorsId'.\r\n оператор был прекращен."}

Я думаю, что понимаю, что он пытается создать новую запись для врачей, но идентификатор уже существует. Как мне это остановить?

1 Ответов

Рейтинг:
5

Not Active

Некоторые примеры здесь
Производительность Entity Framework[^]


postonoh

выясните, как захватить пользователя, который входит в систему. теперь мне нужно вставить этот докторский ПК в ФК пациентов

postonoh

Спасибо,