Entity Framework 处理一个实体映射多个表[one entity mapping multiple tables]

对于Entity Framework, 我是个新人; 最近用到个实体框架来简化对数据库表的操作, 不过在实际中遇到如下一些问题, 在博客园这里希望各位大虾帮我看看下, 是否可以解决, 或者说Entity Framework是否支持?

我在数据库TestDB中建了三个表: Person, Area, House; 表示某个人在某个地区所拥有的房子.

其中 PersonHouse的对应关系是1对多的关系.

数据库如下如图


Person

Area

House

我已经加些一些测试数据进去, 如图

 

 

表建好了,并且测试数据已经添加; 现在我想用Entity FrameworkPerson,Area,House三张表映射到一个实体(Entity), 这个新Entity包含的信息如下图所示:

我用VS2010新建Console Project, 名字是: TestProject, 然后我加入了一个ADO.NET Entity Data Model, 把它命名为: Model1.edmx; 选择的数据库是我创建的测试数据库, 并选中Person,Area,House这三个表, 这时VS2010会自动生成三个对应Table的实体类Person, Area, House, 如下图所示:

由于我的目的是实现一个Entity映射3table, 所以Person.PersonName, Area.AreaName 这些属性都移入至House实体对象, 效果如图:

然后我把Person,Area实体删除掉, 但我要保留Person,Area表在Store Model, 因而在删
Entity, 在弹出的提示框中,选择[No]按钮, 如图:

删除Person, Area 实体后, 就只剩下House 实体了, 如图:

接下来我进行关系的映射, 希望最终的House实体能正确取得如下信息:

 

下面是我配置的Table Mapping :

 

按我理解, 经过这样Mapping, 应该是正确的, 也应该能正确地读取数据才对的, 但我编译时, 失败了, 出现了错误的提示信息, 如图:

至于为什么会发生错误, 我就不清楚了, 肯定是我有些地方配置不正确造成的, 但我就是想用一个实体映射多个表, 虽然表的关系是1对多的关系, 请问我那里设定错了呢? 还是Entity Framework 不支持这种方式呢? 或者有更好的方案, 麻烦都告诉我, 谢谢!

转载于:https://www.cnblogs.com/Akuan/archive/2012/09/01/2666235.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值