如何让自己的框架变得伪ORM?早上想了一下,突然灵感来了。
1。Get一个完整的Entity
我们通常获取一个主实体,都期望能够顺便获取一下他所包含的其他实体的集合。比如OrderEntity 希望能够顺便访问OrderItemEntity集合。由于DataTable只能获取到自己的,所以需要在整个DataSet级别上获取完整的实体集合。
首先,必须FillDataSetByID来获取OrderID对应的Order所有的数据
其次,使用返回回来的OrderDataSet的GetEntity来获取OrderEntity《主表的Entity》,OrderEntity拥有一个OrderItemEntity的数组。
这样我们就可以通过访问OrderEntity的OrderItemEntity数组来获取OrderItemEntity.
2。Set一个完整的Entity
这个比较简单,必须是Set主表的Entity.
如果是新增,只需要用OrderDataSet.CreateEntity() as OrderEntity获取
如果是修改或者删除,必须是FillDataSetByID之后的OrderSet.GetEntity() as OrderEntity来修改删除,然后Set回来
3。Entity应该允许Delete功能
支持Entity标注自己是删除状态。必须是FillDataSetByID后GetEntity获取的,不支持游离的Entity.