EntityFramework 多对多 的Include问题
时间:2011-12-25
来源:互联网
比如在asp.net的Membership当中aspnet_Users和aspnet_Roles使用aspnet_UserInRoles表进行关联的,也就是说aspnet_users和aspnet_usersinroles是一对多关联,aspnet_roles和aspnet_usersinroles也是一对多关联,但是我使用ADO.net Entity Framework做ORM的时候发现Entity Framework把aspnet_Users和aspnet_roles自动设置成了多对多关联。也就是自动生成的对象模型中aspnetUsers实体类包含一个aspnet_roles的集合,aspnet_roles实体类包含了一个aspnet_Users集合。
现在我打算在装载aspnet_roles数据时同时也加在其对应的user信息过来,如果是一对多的关系,使用[Include]特性修饰aspnet_Users属性然后使用ObjectQuery<T>.Include("aspnet_Users");没有问题,但是对于这种多对多关系,使用[Include]特性修饰aspnet_roles的aspnet_Users属性,报错,提示错误 1 成员“aspnet_Users.aspnet_Roles”的 Include 规范无效。 只能对应用了 AssociationAttribute 的成员指定非投影包含。
那么我使用[Association]修饰Roles的aspnet_users属性,要输入关联的主键和外键名称参数,但是实际上这两个表是通过aspnet_usersinroles这个“第三方”关联的,无法指定主键和外键参数。
所以请问各位,怎么使用EntityFramework处理这种"多对多"关系的预装载问题?
多谢!
现在我打算在装载aspnet_roles数据时同时也加在其对应的user信息过来,如果是一对多的关系,使用[Include]特性修饰aspnet_Users属性然后使用ObjectQuery<T>.Include("aspnet_Users");没有问题,但是对于这种多对多关系,使用[Include]特性修饰aspnet_roles的aspnet_Users属性,报错,提示错误 1 成员“aspnet_Users.aspnet_Roles”的 Include 规范无效。 只能对应用了 AssociationAttribute 的成员指定非投影包含。
那么我使用[Association]修饰Roles的aspnet_users属性,要输入关联的主键和外键名称参数,但是实际上这两个表是通过aspnet_usersinroles这个“第三方”关联的,无法指定主键和外键参数。
所以请问各位,怎么使用EntityFramework处理这种"多对多"关系的预装载问题?
多谢!
作者: zuizhu 发布时间: 2011-12-25
作者: hefeng_aspnet 发布时间: 2011-12-26
引用 1 楼 hefeng_aspnet 的回复:
http://www.cnblogs.com/dudu/archive/2011/07/09/entity_framework_many_to_many.html
http://www.cnblogs.com/dudu/archive/2011/07/09/entity_framework_many_to_many.html
ding
作者: jhdxhj 发布时间: 2011-12-26
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28