首页 新闻 会员 周边

实体继承查询问题

0
悬赏园豆:20 [已解决问题] 解决于 2012-07-18 23:19
我有一个实体数据模型,里面有一个申请人(基表),然后有两个继承,法人和自然人,同时,我的法人和自然人都有一个1对多的自关联
我有一个查询,目的是为了查询出属于自然人的申请人,linq 语句是这么写的
List<申请人> Apply = (from ApplyPerson in contain.申请人 where ApplyPerson is 自然人 select ApplyPerson).ToList();
但是每次程序执行到这里都会报错,错误提示是
实体数据模型的设计是:,穷途末路,找不到问题根源,望解答!
问题补充:

删除了自然和法人的自连接关系后就不会报错

有一个奇怪现象就是:如果我查询自然人,把法人的自连接关系删除后就没有问题,如果我查询法人,自然会报错,把自然人的自连接关系删除后也不会报错。

也就是说,查询一个实体,就需要把另外一个实体的自连接关系删除了才不会出错

kuangkro的主页 kuangkro | 菜鸟二级 | 园豆:241
提问于:2012-03-26 16:21
< >
分享
最佳答案
0

问题解决了,问题出在,自关联中需要指定对应关系,也就是说,我在自然人和法人中添加了一个字段交nodeID,他们的对应关系是 自然人ID<---->自然人1nodeID,这样也就不会出现问题了。

刚开始为什么没有加上对应关系,其主要要原因是,我还有一个联系人表,他跟申请人表也有一个1对多的关联关系,但是这里我并没有设置对应关系,程序也能够正常运行,所以就简单的认为其他地方也能够正常运行,但是最终不幸还是发生了,如果不是今晚在不停的测试各种可能造成错误发生情况,可能程序会一直卡在这里了,呵呵。问题解决,不过遗留了一个问题,在关联关系中需不需要设置对应关系....有待查证

kuangkro | 菜鸟二级 |园豆:241 | 2012-03-26 23:53
其他回答(1)
0

看提示:类型申请人里面没有属性id,你的数据结构是什么?

收获园豆:10
小小刀 | 园豆:1991 (小虾三级) | 2012-03-26 19:30

申请人里面有ID,图片是因为字段过多而没有显示出来而已

支持(0) 反对(0) kuangkro | 园豆:241 (菜鸟二级) | 2012-03-26 20:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册