Реализация связей между таблицами
Редактировал(а) Alexandr Fokin 2023/06/30 12:03
Реализация связей | |||||||||||||||
| |||||||||||||||
Реализация загрузки связанных сущностей | |||||||||||||||
| |||||||||||||||
|
Комплексные типы
Owned Entity Types
https://docs.microsoft.com/en-us/ef/core/modeling/owned-entities
Комплексные типы
https://metanit.com/sharp/efcore/3.7.php
Domain Driven Design: Value Objects и Entity Framework Core на практике
https://habr.com/ru/post/443770/
modelBuilder.Entity<Entity1>(
(b) =>
{
b.HasKey(e => e.Id);
b.OwnsOne(
e => e.CreateDate,
b2 =>
{
//Setup ownded type
//Необязательно - явно определить свойство и ключ владельца
builder.WithOwner(nameof(Owner))
.HasForeignKey(e => e.OwnerId);
}
);
}
);
(b) =>
{
b.HasKey(e => e.Id);
b.OwnsOne(
e => e.CreateDate,
b2 =>
{
//Setup ownded type
//Необязательно - явно определить свойство и ключ владельца
builder.WithOwner(nameof(Owner))
.HasForeignKey(e => e.OwnerId);
}
);
}
);
В качестве подчиненного типа может выступать Record класс.
Для типизированной реализации доступа к владельцу можно использовать OwnedClass<TOwner, TOwnerKey>