比如有两张表,一张节目表,一张节目话题表

节目表的主键是 proid

节目话题表的主键是topicid

两张表关系是one to one,一档节目只有一个话题,不过也可以没有话题

两张表不是通过主键进行关联,而是话题表中的外键proid

这在NHibernate的配置文件中,应书写如下

节目:

<one-to-one name="proTopic" class="Model.Entities.ProgramTopic, Model" cascade="none" property-ref="proid" />

节目话题:

<many-to-one name="program" class="Model.Entities.Programme, Model" cascade="none"  ><column name="proid" sql-type="bigint" not-null="true" />
</many-to-one>

注意点,由于这两张表虽然是1to1关系,但不是通过主键关联,而是通过节目话题表的外键proid关联,所以在配置文件中看到了property-ref="proid"

另外由于两者不是主键关联,所以在节目话题中也要指定proid,所以不写one-to-one了,而是写many-to-one,写one-to-one的话会默认用主键来关联

转载于:https://www.cnblogs.com/rav009/archive/2012/09/12/5131191.html

NHibernate one-to-one 关系的几点说明相关推荐

  1. 【转】NHibernate入门教程

    开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo 摘要: 热衷于开源框架探索的我发现A ...

  2. 在实际项目中如何应用门面模式(Facade)

          我选择在项目中采用Nhibernate+Spring.Net+Asp.Net + Jquery 来作为我的主要.Net技术,我的框架的设计借鉴了博客园博主 传说中的弘哥博主的大量的技术思路 ...

  3. 【翻译】How-To: Using the N* Stack, part 5

    原文地址:Part 5: Fixing the Broken Stuff 到目前为止,我们一直都在关注 NHibernate 和持久化.在本篇中,我们会纠正之前模式和映射的问题来通过我们的测试.本篇结 ...

  4. oracle 允许级联删除,oracle系列--级联删除和级联更新

    鉴于此前收藏的精彩博客无料被删除了,很是痛心,所以还是要复制一下 一.级联删除 Oracle在外键的删除上有NO ACTION(类似RESTRICT).CASCADE和SET NULL三种行为. 下面 ...

  5. NetBPM工作流QA

    NetBPM工作流Q&A(不断更新) Made by LuBen:2007年8月12日 目录 写在前面 如何打包par包 流程定义是不是不支持中文? 流程图片大小是不是不能超过8k? 动态委托 ...

  6. ABP框架系列之七:(About-关于ABP)

    Considerations Source codes Contributors Contact ASP.NET Boilerplate is designed to help us to devel ...

  7. 工作多年后才明白的.NET底层开发技术

    参加工作已经有五年了.由于是非计算机科系,一开始的工作是做网页,维护ASP脚本程序,有时候也要做图片,总而言之,一项任务交到手里,没有借口说不会做,想办法弥补然后把任务做完.后来才得到机会,参与编程开 ...

  8. NHibernate之旅(11):探索多对多关系及其关联查询

    本节内容 多对多关系引入 多对多映射关系 多对多关联查询 1.原生SQL关联查询 2.HQL关联查询 3.Criteria API关联查询 结语 多对多关系引入 让我们再次回顾在第二篇中建立的数据模型 ...

  9. 从java中的hibernate看Ado.net 与NHibernate的关系

    看了许多人的文章,将Ado.net 与NHibernate看作类似的东西,频繁将两者进行比较.对于那些朋友的观点,我不认同!      我认为ado.net 和 nhibernate是完全不同层次的东 ...

  10. NHibernate VS .NET Type VS DbType 的类型映射关系

    在使用NHibernate作为ORM工具的时候,我们经常会用到配置文件,包括NH的配置和实体映射的配置. 在配置实体映射关系的时候,有时候需要配置属性的类型映射,因为.NET的数据类型和数据库的数据类 ...

最新文章

  1. ElasticSearch插件安装
  2. GitLab修改用户密码
  3. 网页中自动换行问题〔zz〕
  4. 使用shell脚本实现在liunx上进行svn的上传下载更新功能
  5. 叁仟柒佰万(mex+线段树+dp+前缀和优化+双指针+桶)
  6. leetcode547. 省份数量
  7. 区块链学习-以太坊学习简介
  8. 20-2.系统启动和内核管理centos7(unit,systemctl,grub2-)
  9. 睡眠监测中的一些术语和指标(AASM)
  10. ae怎么卸载已经安装的插件_ae红巨人插件卸载教程!
  11. STM32_编程入门
  12. ts 报错:‘new‘ expression, whose target lacks a construct signature, implicitly has an ‘any‘ type.
  13. 新手入门笔记——linux常用命令总结
  14. 我真的不懂路由器和交换机的区别
  15. SQL 数据库简单使用
  16. 怎么提升工作能力?怎么制定计划?
  17. 开始构建你的DBaaS:使用zCloud自动化安装部署Oracle和MySQL数据库
  18. IT业的未来主导将是软件业
  19. big-endian和litte-endian转换 大端字节次序,小端字节次序转换
  20. 共识游戏:特斯拉和软银谁更会打麻将?

热门文章

  1. Ubuntu 截屏(或截图)
  2. Matlab的数据类型及相互转换
  3. Caffe学习:Forward and Backward
  4. python-ImageDraw
  5. 【Caffe安装】ImportError: No module named caffe 的解决方案
  6. python生成指定年份所有的天,并计算每天属于一年的第几周和周几
  7. python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
  8. python实现判断给定列表是否存在重复元素,且索引差小于k
  9. 【深度学习-花书】第二章 线性代数
  10. 设某链表中最常用的操作是在链表的尾部_面试官:“双向链表”都不会,谁给你跳槽的勇气?...