我正在创建新实体但是将它们分离,因为我想稍后附加并保存它们。
manager.createEntity(“Employee”,null,EntityState.Detached)
如何从实体管理器中检索所有已添加但已分离的实体?那是我添加的实体,它们在缓存中但尚未保存?
答案 0 :(得分:0)
您不能向EntityManager询问已分离的实体,因为它们是...分离的。
“Detached”表示它们不属于EntityManager。
修改分离的实体通常不是一个好主意。您会发现它们的行为与附加实体不同。例如,它们的导航属性都不起作用......原因很简单,导航属性在同一个EntityManager中查找相关实体,而这个分离的实体没有EntityManager。
我认为您需要解释是什么促使您在分离状态下创建这些实体。为什么不将它们保留为“已添加”(默认状态)?
也许你担心过早拯救他们?我们可以谈谈如何防范这一点。
也许你正在创建它们,但是在用户至少进行了一次更改之前,真的不想保存它们吗?我们可以谈论模式来涵盖这一点。