快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

和记娱h188下载app手机版:ADO.NET Enity Frame的继承设置VS2008(SP1)



曩昔在VS2005顶用过强类型的DataSet, 对照苦楚;比拟之下EF会好很多, 假如在EF中应用承袭再结合Lambda,对付查询来说确凿是方便不少.结合了其他几位高人的文章形成了我这篇翰墨,这篇翰墨主要先容若何从表之间的主从关系设置为在EF中的"父子关系", 即主从表改为承袭关系.

1. 首先, 数据库的布局如下图

(图-1)

从图中可以看出UserOrGroup是Group和User的主表,是和记娱h188下载app手机版一对多的关系, 下面的例子便是要改动这种关系为Group, User承袭于UserOrGroup.

2.在VS2008(SP1) 中,新建一个ADO.NET Entity Data Model工具,默认的文件名是Model1.edmx,然后将图-1所示的表包孕到Model1.edmx中,形如

(图-2)

删除图-2中UserOrGroup与User, Group之前的关系(见图-3)

(图-3)

删除User工具的UserID属性, 删除Group工具的GroupID属性

(图-4)

选中UserOrGroup工具,将它的Abstract属性设为True.

现在要和记娱h188下载app手机版设置User, Group与UserOrGroup工具的承袭关系,即UserOrGroup是父类, User是UserOrGroup的子类; UserOrGroup是父类, Group是UserOrGroup的子类. 在UserOrGroup工具上点击鼠标右键,在弹出的快捷菜单中依次选择Add->Inheritance,

(图-5)

在弹中的窗口中在Select a derived entity处选择Group, 重复上述步骤并在Select a derived entity处选择User, 以完成User和Group对UserOrGroup的承袭

(图-6)

设置好今后终极显示如图-7

(图-7)

由于刚才已删除User, Group与UserOrGroup之间的关系,以是现在要从新建立:设置User.UserID与UserOrGroup.ID关联(图-8), 设置Group.GroupID与UserOrGroup.ID关联(图-9)

注: 只必要设置红框标识的Value/Property地方

(图-8)

(图-9)

GroupMember保存Group与User的关系,刚才在删除User,Group与UserOrGroup关系的同时,GroupMember与Group, User的关系也一路消掉,以是这里要从新设置,如图-10

(图-10)

设置好与GroupMember的映射今后就完成了设置User, Group承袭UserOrGroup的操作.

停止语:我也是刚应用ADO.NET Entity, 今朝只体验到和记娱h188下载app手机版在涉及关联查询的操作上十分方便。

注: 这不是DDD.

参考引用:

体验ADO.NET Entity Framework的承袭

En和记娱h188下载app手机版tity Framework Modeling : Entity Splitting

Entity Framework Modeling: Entity Splitting Part II和记娱h188下载app手机版 (adding inheritance)

您可能还会对下面的文章感兴趣: