Глобальный фильтр по полю, которого нету в сущности
Можно ли в EF сконфигурировать сущность так, чтобы применить глобальный фильтр по полю, которого нету в модели?
Допустим, у меня для каких-то целей есть ненормализованная сущность и я хочу туда замапить несколько моделей и в каждом маппинге модели прописать глобальный фильтр, которого нет среди полей.
Ответы (1 шт):
Автор решения: RusArt
→ Ссылка
Использованию shadow properties посвящен раздел документации.
Настроить глобальный фильтр можно в методе OnModelCreating используя HasQueryFilter.
В документации даже есть пример глобального фильтра на такое свойство:
modelBuilder.Entity<Blog>().HasQueryFilter(b => EF.Property<string>(b, "_tenantId") == _tenantId);