我知道POCO,我最近听说过自我跟踪实体。任何人都可以解释POCO和STE之间的差异
答案 0 :(得分:1)
自跟踪实体是在实际实体类的getter / setter中具有持久性逻辑的实体。简而言之,他们是了解如何自救的实体。
这与POCO实体(Plain Old CLR Objects)不同,POCO实体是仅存储实体(即它们没有内部逻辑)。
EF与处理这些方法的主要区别在于EF如何检测变化。 STE告诉EF关于变化的信息,EF通常使用跟踪图来检测附加的变化。
注意:在最新版本的EF
中不推荐使用STEPOCO和STE与EF之间也存在一些中间立场,称为POCO代理实体。对于此实体框架,将重载POCO类的属性并创建一个代理,该代理将在发生更改时告知EF。为此,您需要在类上创建虚拟的所有属性。 POCO代理在某些情况下可以表现更好,尤其是在跟踪图很大时。但是,在所有情况下,性能并不是更好,请参阅Arthur Vickers (from EF) post on POCO Proxies。
我的理解是POCO Proxies旨在取代STE。