Наследование в entity framework
Download 39.18 Kb.
|
NASLEDOVANIYE ...
- Bu sahifa navigatsiya:
- Сопоставление иерархии типов сущностей
- Совет Если вы не полагаетесь на соглашения
НАСЛЕДОВАНИЕ В ENTITY FRAMEWORK EF может сопоставить иерархию типов .NET с базой данных. Это позволяет писать сущности .NET в коде, как обычно, используя базовые и производные типы, а также заставить EF легко создавать соответствующую схему базы данных, запрашивать запросы и т. д. Фактические сведения о сопоставлении иерархии типов зависят от поставщика; На этой странице описывается поддержка наследования в контексте реляционной базы данных. Сопоставление иерархии типов сущностей По соглашению EF не будет автоматически проверять базовые или производные типы; это означает, что если требуется сопоставить тип CLR в иерархии, необходимо явно указать этот тип в модели. Например, указание только базового типа иерархии не приведет к тому, что EF Core неявно включает все ее подтипы. В следующем примере предоставляется dbSet для Blog и его подкласса RssBlog. Если Blog имеет какой-либо другой подкласс, он не будет включен в модель. C#Копировать internal class MyContext : DbContext { public DbSet public DbSet } public class Blog { public int BlogId { get; set; } public string Url { get; set; } } public class RssBlog : Blog { public string RssUrl { get; set; } } Примечание При использовании сопоставления TPH столбцы базы данных автоматически добавляются к значению NULL. Например, столбец допускает значение NULL, RssUrl так как обычные Blog экземпляры не имеют этого свойства. Если вы не хотите предоставлять для DbSet одной или нескольких сущностей в иерархии, можно также использовать API Fluent, чтобы убедиться, что они включены в модель. Совет Если вы не полагаетесь на соглашения, можно явно указать базовый тип с помощью HasBaseType. Вы также можете использовать для .HasBaseType((Type)null) удаления типа сущности из иерархии. Download 39.18 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling