@evolit
Вася

Как в таблице реализовать связь «либо либо»? (шахматный порядок заполнения)?

Добрый день.

Есть некая таблица в которой присутствуют два столбца "PrivatePersonId" и "JuridicPersonId"
Столбцы не являются частью ключа, но имеют между собой зависимость:
Либо заполняется один столбце, либо второй.

На текущий момент было решено вынести связь в отдельную таблицу "Seller" с столбцами
{Id,PrivatePersonId,JuridicPersonId}
А в главной таблице оставить столбец "SellerId" с ссылкой на ID таблицы "Seller".

Вопрос: является ли такая архитектура правильной?
В частности при работе с EntityFramework смущает получение информации о продавце:
if (Obj.Sellser.PrivatePerson != null){
     Console.Writeline(obj.Seller.PrivatePerson.Name);
....}
else
{
   Console.Writeline(obj.Seller.JuridicPerson.Name);
}
  • Вопрос задан
  • 2331 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы