Есть основная таблица с записями, в проекте описана как следующий класс
public class Record
{
public int RecId { get; set; } //Идентификатор, primary key
public string Name { get; set; }
}
Так же есть вторая таблица, которая отображает связь "ребенок-родитель"
public class Relationship
{
public int ChildId { get; set; } //Primary key
public int ParentId { get; set; } //Foreign key
}
Нужно настроить связи в Entity Framework - у одного "ребенка" может быть только один "родитель", у "родителя" может быть несколько "детей". "Ребенок" также может быть родителем. Также возможна ситуация, когда у записи нет ни "родителя", ни "детей".
Убрал сущность Relationship, также изменил основную сущность Record следующим образом:
public class Record
{
public int RecId { get; set; } //Идентификатор, primary key
public string Name { get; set; }
public int? ParentId { get; set; } //foreign key
public Record Parent { get; set; }
public IEnumerable<Record> Childrens { get; set; }
}
Также использовал fluent-api и при конфигурации написал следующие связи:
HasMany(m => m.Childrens).WithOptional(o => o.Parent).HasForeignKey(k => k.ParentId);
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости