Недавно я столкнулся с временными таблицами в SQL Server и узнал, что Entity Framework Core их поддерживает. Временные таблицы кажутся именно тем, что мне нужно для моего проекта. Однако в документации в первую очередь показано, как их настроить с помощью Fluent API, например:
Код: Выделить всё
modelBuilder
.Entity()
.ToTable("Employees", b => b.IsTemporal());
В нашем проекте мы в значительной степени полагаемся на аннотации к данным для настройки сущностей. Мне было интересно, есть ли способ определить временные таблицы с помощью атрибутов, примерно так:
Код: Выделить всё
[Table("Employee")]
[TemporalTable]
public class Employee
{
...
}
Или даже лучше:
Код: Выделить всё
[TemporalTable("Employee")]
public class Employee
{
...
}
Я изучил документацию EF Core и онлайн-ресурсы, но не смог найти никаких упоминаний о [TemporalTable] или подобных атрибутах для настройки темпоральных таблиц с помощью аннотаций к данным. Ближе всего я нашел конфигурацию Fluent API, показанную выше, но она не соответствует предпочтениям нашего проекта в отношении атрибутов.
Я ожидал простого подхода на основе атрибутов, который мог бы заменить Fluent Конфигурация API и полная интеграция с существующей настройкой аннотаций данных.
Есть ли в EF Core встроенная поддержка настройки временных таблиц с использованием аннотаций данных? Если нет, существуют ли какие-либо известные обходные пути или специальные решения для достижения этой цели?
Будем очень признательны за любую помощь или идеи!
Подробнее здесь:
https://stackoverflow.com/questions/793 ... nnotations