Сначала я использую Entity Framework Database для создания модели моего домена.
Я рассматриваю возможность создания базовой таблицы EntityBase с базовыми свойствами в:
PK
CreatedDate
CreatedBy
ModifiedDate
ModifiedBy
etc.
Использование наследования таблиц по типам В итоге я получу одну таблицу в базе данных, связанную со всеми другими таблицами сущностей:
EntityBase {
EntityBase_PK => Identity PK
CreatedDate
CreatedBy
ModifiedDate
ModifiedBy
}
DerivedEntity1 {
DerivedEntity1_PK => FK relationship to EntityBase on EntityBase_PK
Property1
...etc
}
DerivedEntity2 {
DerivedEntity2_PK => FK relationship to EntityBase on EntityBase_PK
Property2
...etc
}
...etc
Я считаю, что это будет хорошо работать с Entity Framework, но я обеспокоен, если это хороший дизайн с точки зрения базы данных.
Очевидное преимущество, которое я вижу, заключается в том, что я получаю уникальный PK для всех сущностей во всей базе данных, но я обеспокоен тем, что попадание каждого обновления в таблицу EntityBase может быть проблемой производительности, а также иметь влияние по отношению к таблице блокировка.
Мысли