我怀疑这是可能的,但无论如何我都会问,以防万一,是否可以调整延迟加载以仅加载“IsDeleted”属性为假的子对象?
这只是为了帮助解决我需要将 .where(x => !x.IsDeleted) 添加到我的大多数方法的事实,这在我看来很混乱。
编辑
我的实体是使用 CodeFirst 创建的
非常感谢
我怀疑这是可能的,但无论如何我都会问,以防万一,是否可以调整延迟加载以仅加载“IsDeleted”属性为假的子对象?
这只是为了帮助解决我需要将 .where(x => !x.IsDeleted) 添加到我的大多数方法的事实,这在我看来很混乱。
编辑
我的实体是使用 CodeFirst 创建的
非常感谢
如果您使用条件映射,这是可能的。在这种情况下,EF 将永远不会加载IsDeleted
设置为 true 的任何内容,但同时IsDeleted
列将在您的实体中根本不可用(因为它将用于映射)。如果您的应用程序也可以设置此标志,您将需要为实体映射存储过程 - 您甚至可以为删除操作映射存储过程,这将在数据库中设置标志而不是删除项目。