实体框架 - 分离和重新附加实体?

Posted

技术标签:

【中文标题】实体框架 - 分离和重新附加实体?【英文标题】:Entity Framework - Detaching and Re-attaching entities? 【发布时间】:2009-07-31 20:34:57 【问题描述】:

我有实体-属性-值 (EAV) 数据库。这种意义上的实体与 EF 中的实体无关,而只是指您存储信息的一些“事物”。您在 Value 表中存储一个值,该值与一个 Attribute(信息的名称)和一个 Entity 相关联。

在 EAV 模型中,您不存储 NULL 值。对于 Entity,Attribute 的给定组合,Value 表中缺少条目意味着 NULL。

因此,Value 表中的 Data 列(比如 Int 类型)不可为空。这是我必须处理的一个约束。我无法改变它。

我正在构建一个 WPF 应用程序并希望将一个 Value 实体绑定到一个文本框。如果在保存时文本框为空,我需要确保绑定的实体不包含在保存中(因为这会在表中写入 0,这是不正确的)。如果文本框不为空,显然应该保存数据。

我正在尝试根据文本框的值分离和重新附加实体,但遇到与关系对象有关的错误。

关于如何实现我想要做的事情的任何想法?

【问题讨论】:

【参考方案1】:

当您附加一个对象时,您还必须附加对该对象具有的其他实体的引用...

【讨论】:

以上是关于实体框架 - 分离和重新附加实体?的主要内容,如果未能解决你的问题,请参考以下文章

实体框架代码优先 - DbContext 上没有 Detach() 方法

Spring JpaRepository - 分离和附加实体

EF6 无法将分离的实体附加到上下文

实体框架分离实体和相关实体消失

无法附加分离的实体:“ObjectStateManager 中已存在具有相同键的对象”

如何附加不是来自数据库的实体框架对象?