使用DTO将跟踪更改为POCO实体框架4 / 4.1

时间:2011-09-27 11:26:06

标签: asp.net-mvc-3 entity-framework-4 entity-framework-4.1 automapper dto

我已将Entity Framework 4.0 POCO实体用于当前项目中的持久层。

我使用DTO将数据从服务层发送到UI层。存储库和服务层内部使用了POCO。

有一个映射层可以映射(DTO到域(POCO)和(域(POCO)到DTO)。目前,我们手动跟踪这些变化。

例如,如果实体id为零,我们假设该实体是新实体,如果不是实体则是更新。

除了在Entity Framework 4.0中手动实现IsTransient(New),IsDirty(Update)或IsDeleted(Delete)属性外,还有什么方法可以实现这个目的吗?

1 个答案:

答案 0 :(得分:2)

如果您使用自定义DTO,则必须始终实施自己的更改跟踪。

EF 4仅提供self tracking entities,但这需要您直接使用这些实体而不是DTO,它们还有其他一些缺点。

相关问题