Как переопределить/настроить добавление объекта VIEW в качестве вставки в несколько подтаблиц?C#

Место общения программистов C#
Ответить
Anonymous
 Как переопределить/настроить добавление объекта VIEW в качестве вставки в несколько подтаблиц?

Сообщение Anonymous »

У меня есть представление пациента в базе данных mysql, которое состоит из таблиц пациента_info и пациента_документы.
Просмотр пациента:
+---------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| id | int | NO | | 0 | |
| name | varchar(30) | NO | | NULL | |
| passport_data | char(11) | NO | | NULL | |
+---------------+--------------+------+-----+---------+-------+

Таблица пациента_информация:
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int | NO | PRI | NULL | auto_increment |
| name | varchar(30) | NO | | NULL | |
+------------+--------------+------+-----+---------+----------------+

Таблица пациент_документы:
+---------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+----------------+
| documents_id | int | NO | PRI | NULL | auto_increment |
| patient_id | int | NO | UNI | NULL | |
| passport_data | char(11) | NO | UNI | NULL | |
+---------------+--------------+------+-----+---------+----------------+

Я хочу продолжать получать объекты из представления пациента, но измените добавление объекта Patient в базу данных через DbContext следующим образом: вставьте пациента Атрибуты в Patient_info и Patient_Document.
Как это реализовать? Я подумал, что это хорошая идея, потому что можно будет добавлять дополнительные скрытые атрибуты в Patient_info для других типов пользователей, и эти атрибуты не будут читаться теми, у кого нет доступа к Patient_info (просмотр пациента ограничивает получение атрибутов).
Может быть, я здесь переделал колесо и смысла в таком подходе нет?
Резюме : как переопределить добавление объекта Patient в DbContext как добавление его атрибутов в Patient_info и Patient_Documents, но продолжать получать информацию о пациенте через просмотр пациента?
Я хочу что-то вроде
public Patient patient
{
get => PatientView.Patient; // keep EFC behavior
set
{
var insertedPatient = value;
// breaking patient entity into two entity

var insertedPatientInfo = new PatientInfo
{
Name = insertedPatient.Name;
};
PatientInfo(insertedPatientInfo); // insert in one table

var insertedPatientDocuments = new PatientDocuments
{
PasportData = insertedPatient.PassportData;
}
PatientDocuments.Add(insertedPatientDocuments); // insert in second table
}
}


Подробнее здесь: https://stackoverflow.com/questions/788 ... everal-sub
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»