• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
光脚丫思考的专栏
十年窗下无人问,一举成名天下知!
博客园    首页    新随笔    联系   管理    订阅  订阅

光脚丫学LINQ(035):映射关系的定义推测之OtherKey

视频演示:http://u.115.com/file/f2c8c9f84a

 

演示重点
要想在两个实体类之间建立映射关系的话,只需要正确的设置ColumnAttribute的Storage、ThisKey和OtherKey三个属性。如果使用的是实体类的字段而非属性的话,甚至连Storage属性都可以省略。
不管是建立怎样的映射关系,最根本的目的就是想要获取与某个对象关联的一些其他的对象。比如我们获取一个Customer对象之后,就像通过它的某一个集合属性来获取与之关联的所有的Order对象。因此,如果想要让LINQ to SQL成功的获取关联数据,则必须至少提供三方面的信息:
1、检索数据的条件。比如要检索的是哪个客户的订单记录。
2、从哪个表检索。比如这些订单记录存储在数据库的那个数据表中。
3、用检索条件比对那个数据列。比如客户的编号是存储在保存订单记录的数据表的哪个列中。
满足了这方面的信息,就能正确获取关联数据了。
ThisKey属性的作用就是用来提供要检索的是哪些数据。此属性值其实是实体类的一个键值属性,而此键值属性的属性值就是指定了要检索的数据。
OtherKey的作用就是用来指定要在WHERE子句中要对那个列进行条件判断,此属性值同样是实体类的一个键值属性,但这次并不需要此键值属性的属性值,而是需要此键值属性所映射的数据列的名字。
至于要从哪个数据表来检索关联的数据,这就有所要获取的实体类型来确定了。其实就是实体类所映射的那个数据表。

posted @ 2010-12-03 20:39  光脚丫思考  阅读(503)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3