NHibernate many-to-one映射
many-to-one
数据方面,多条对一条。
非主键字段与主键字段的关联,在类中实现了一对一的单向映射。在类中是单实体映射。
订单充值业务。显然,一单位可以有多个充值信息。
通过表 Deposit里面的CompanyId字段关联表Company主键Id字段。
订单信息。
[Serializable]
public class DepositInfo
{
/// <summary>
/// 商户订单号
/// </summary>
public virtual string TradeNo {get;set;}
/// <summary>
/// 商家Id
/// </summary>
public virtual int CompanyId {get;set;}
public virtual Company CompanyInfo { get; set; }
}
映射文件
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Model.DepositInfo, Model " table="dbo.Deposit">
<id name="Id" type="Int32" unsaved-value="0">
<column name="Id" length="4" sql-type="int" not-null="true" unique="true"/>
<generator class="native" />
</id>
<property name="TradeNo" type="string"/>
<property name="CompanyId" column="CompanyId" type="int" />
<many-to-one name="CompanyInfo" fetch="join" column="CompanyId" not-found="ignore"></many-to-one>
</class>
</hibernate-mapping>
商家信息
public class Company
{
public virtual int Id {get;set;}
/// <summary>
/// 厂家名称
/// </summary>
public virtual string Name {get;set;}
}
映射文件
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Model.Company, Model" table="Company">
<id name="Id" column="Id" type="int" unsaved-value="">
<generator class="native" />
</id>
<property name="Name" column="Name" type="string" />
</class>
</hibernate-mapping>
NHibernate many-to-one映射的更多相关文章
- NHibernate初入门之映射文件配置说明(三)
转载逆心http://www.cnblogs.com/kissdodog/archive/2013/02/21/2919886.html 1. hibernate-mapping 这个元素包括以下可选 ...
- 通俗易懂的Nhibernate教程(1) ----- 基本操作,映射,CURD
网站架构: 1.图片 2.说明 Data ----------------------- 类库项目,数据访问层,由Nhibernate提供数据相关操作 Mapping ------------- ...
- NHibernate多对多关联映射的实现
上次用EF演示了数据库多对多关系的操作,这次我们还是引用上次的案例,来演示如何在C#当中使用NHibernate. 首先介绍一下NHibernate框架的来源.熟悉Java编程的读者肯定知道Hiber ...
- Fluent NHibernate关系映射
1.好处:Fluent NHibernate让你不再需要去写NHibernate的标准映射文件(.hbm.xml), 方便了我们的代码重构,提供了代码的易读性,并精简了项目代码 实现: (1).首先我 ...
- 【翻译】Fluent NHibernate介绍和入门指南
英文原文地址:https://github.com/jagregory/fluent-nhibernate/wiki/Getting-started 翻译原文地址:http://www.cnblogs ...
- [Fluent NHibernate]第一个程序
目录 写在前面 Fluent Nhibernate简介 基本配置 总结 写在前面 在耗时两月,NHibernate系列出炉这篇文章中,很多园友说了Fluent Nhibernate的东东,也激起我的兴 ...
- ADO.NET与ORM的比较:NHibernate实现CRUD(转)
原文地址 http://blog.csdn.net/zhoufoxcn/article/details/5402511 说明:个人感觉在Java领域大型开发都离不了ORM的身影,所谓的SSH就是Spr ...
- 【ORM】--FluentNHibernate之基本映射详解
最近在做项目的时候用到了NHibernate,使用它并不困难,但是很麻烦.如果我的数据库有几百张表如果想要一个个的映射岂不是很麻烦,所以这种情况下使用NHibernate就会很笨重,虽然 ...
- NHibernate 基本配置 (第一篇)
使用NHibernate最重要的一步就是配置,如果连NHibernate都还没有跑的起来,谈何学习.今天就来详解一下NHibernate的配置. 一.NHibernate基本配置 NHibernate ...
- NHibernate系列文章十六:使用程序集管理NHibernate项目(附程序下载)
摘要 在实际的项目中,经常是将NHibernate的实体关系映射类做成独立的工程(assembly dll),只对外提供Session调用的接口.这个程序集作为数据访问层,可以被上面的多个工程(ASP ...
随机推荐
- [LeetCode] 99. Recover Binary Search Tree(复原BST) ☆☆☆☆☆
Recover Binary Search Tree leetcode java https://leetcode.com/problems/recover-binary-search-tree/di ...
- Qt 设置窗口居中显示和窗体大小
设置窗口居中显示 方法一:在窗口(QWidget类及派生类)的构造函数中添加如下代码: #include <QDesktopWidget> //....... QDesktopWidget ...
- 自建yum源解决Ceph搭建过程中从官网取包慢的问题
最近项目组需要ceph环境,第一次搭建ceph,各种不顺,装了卸,卸了装,一遍又一遍地按照官网的操作进行.最气人的是网速差,从官网取包太慢.一轮尝试就浪费一上午. 因此想到本地新建yum源. 首先,按 ...
- Wireshark:No interfaces found解决方法(Windows 10)
启动Wireshark时有时会报“No interfaces found”,找不到网卡进行截包.造成这种情况的原因可能有两个,一是npf服务没启动,二是当前用启对网卡没有拦截权限. 一.npf服务未启 ...
- js string对象方法
substr(start,length) substring(start,end) 返回子串,原字符串不改变.
- CCF关于NOIP2018获奖证书发放的公告
CCF定于即日起开始受理NOIP2018获奖证书申请.凡获得NOIP2018复赛提高组和普及组一二三等奖的选手均可申请证书.本次获奖证书有电子版和纸质版两种.电子版证书免费发放,纸质版证书收取部分工本 ...
- Unity中DOTween插件的DOTweenPath轨迹移动
先来看一下DOTweenPath组件的截图 1.Scene View Commands (1)SHIFT+CTRL:add a waypoint 加一个轨迹点 (2)SHIFT+ALT: ...
- js的event.preventDefault()与event.stopPropagation()
event.preventDefault()用法介绍 该方法将通知 Web 浏览器不要执行与事件关联的默认动作(如果存在这样的动作).例如,如果 type 属性是 "submit" ...
- java中JDBC连接数据库操作的基本步骤
JDBC基本步骤 创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lan ...
- cocos2d方块方块
cGridSize=32 cSceneWidth=8+2 cSceneHeight=18 fuction Grid2Pos(x,y) local visibleSize=cc.Director:get ...