首页 > 解决方案 > 仅针对选择查询忽略实体属性。但在更新/插入期间仍需考虑它们。EF 核心 2.1

问题描述

我有以下问题:我在 Ef Context 中有大约 80 个 DBSet。所有这些实体都继承自 HistoricalEntity 类,该类包含历史字段,如(AddDate、AddSource、ChangeDate、ChangeSource)。我想找到一个解决方案,如何不在每个查询中选择这些字段。有没有办法在全球范围内一次性完成?像设置全局查询过滤器一样吗?

此外,我尝试使用 NotMapped 属性和 Fluent API Method Ignore,但在这些情况下,历史属性的更新和插入操作被阻止。

换句话说,我不想在所有查询中选择历史字段,但我仍然想更新并插入它们。

提前致谢

标签: .netentity-frameworkasp.net-coreef-core-2.1

解决方案


EF Core 具有阴影属性

影子属性是未在 .NET 实体类中定义但在 EF Core 模型中为该实体类型定义的属性。这些属性的值和状态纯粹在 Change Tracker 中维护。


推荐阅读