NHibernate 基础
install-package nhibernate
install-package nunit
Customer.cs public class Customer{public virtual Guid ID { get; set; }public virtual string Name { get; set; }public virtual string City { get; set; }}
Customer.hbm.xml,需要设置为嵌入式资源,并与相应CS文件同DLL <?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="NHi.Domain" namespace="NHi.Domain.Entities"><class name="Customer" table="Customer"><id name="ID" column="ID" type="Guid" ><generator class="assigned" /></id><property name="Name" type="string"><column name="Name" sql-type="varchar(20)" not-null="false" /></property><property name="City" type="string"><column name="City" sql-type="nvarchar(500)" not-null="false" /></property></class> </hibernate-mapping>
hibernate.cfg.xml <?xml version="1.0" encoding="utf-8"?> <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2" ><session-factory name="NHi.Test"><property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property><property name="connection.connection_string">server=local;database=NHiDemo;uid=sa;pwd=123456;</property><property name="dialect">NHibernate.Dialect.MsSql2008Dialect</property><property name="hbm2ddl.auto">update</property> <!--貌似只能添加列,对删除列,修改类型/长度不起作用,待续。。。--><mapping assembly="NHi.Domain"/></session-factory> </hibernate-configuration>
BaseTest.cs
public class BaseTest{protected ISessionFactory sessionFactory;[SetUp]public void Init(){var cfg = new NHibernate.Cfg.Configuration().Configure("Config/hibernate.cfg.xml");sessionFactory = cfg.BuildSessionFactory();}
[TearDown] public void Teardown() { }
}
CustomerTest.cs
[TestFixture] public class CustomerTest:BaseTest {[Test]public void Add(){object o = null;using (ISession session = sessionFactory.OpenSession()){var customer = new NHi.Domain.Entities.Customer(){ID = Guid.NewGuid(),Name = "your name",City = "my city"};o=session.Save(customer);session.Flush();}Assert.NotNull(o);} }
NuGet 包:
扩展和更新:
转载于:https://www.cnblogs.com/yipeng-yu/p/4160130.html
NHibernate 基础相关推荐
- NHibernate基础
本文不将介绍NHibernate是什么,这个在其帮助中讲得非常清楚,本人下载中提供v2.0.0的帮助文档免费下载,地址为http://down.51cto.com/data/224472. 配置 本人 ...
- Nhibernate 基础关系映射
多对一 <many-to-one name="OrderEntity" column="OrderID" class="MedicalSyste ...
- NHibernate扩展:FluentNHibernate基础教程
http://www.cyqdata.com/nhibernate/article-detail-2523 经过大大小小的项目之后,在在DevText项目中使用下Fluent NHibernate,今 ...
- NHibernate之映射文件配置说明(转载2)
六.鉴别器 在"一棵对象继承树对应一个表"的策略中,<discriminator>元素是必需的, 它定义了表的鉴别器字段. 鉴别器字段包含标志值,用于告知持久化层应该为 ...
- 【转】NHibernate入门教程
开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo 摘要: 热衷于开源框架探索的我发现A ...
- Nhibernate学习起步之many-to-one篇(转)
1. 学习目的: 通过进一步学习nhibernate基础知识,在实现单表CRUD的基础上,实现两表之间one-to-many的关系. 2. 开发环境+必要准备 开发环境: window ...
- NHibernate之映射文件配置说明
1. hibernate-mapping 这个元素包括以下可选的属性.schema属性,指明了这个映射所引用的表所在的schema名称.假若指定了这个属性, 表名会加上所指定的schema的名字扩展为 ...
- Nhibernate学习之many-to-many篇
学习目的: 通过进一步学习Nhibernate基础知识,掌握用Nhiberate实现多对多的业务逻辑 开发环境+必要准备 开发环境: windows 2003,Visual studio .Net 2 ...
- Nhibernate学习之起步篇-1
1. 学习目的 学习Nhibernate基础知识.掌握Nhibernate的配置方法,实现对单表的简单操作,如:创建表,查询,添加,删除,修改. 2. 开发环境+前期准备开发环境: windows 2 ...
最新文章
- 论文翻译_做论文翻译需要知道哪些翻译技巧?知行翻译:这3个技巧
- 健康的身体是一切的保证 - 保护偶的颈椎!
- 利用Caffe训练模型(solver、deploy、train_val) + python如何使用已训练模型
- 你还弄不懂的傅里叶变换,神经网络只用了30多行代码就学会了
- 大话设计模式(十四 设计模式不能戏说!设计模式怎就不能戏说?)
- Spring 3.2.* MVC通过Ajax获取JSON数据报406错误
- hdu 4619 Warm up 2(并查集)
- win11怎么回退原系统 Windows11回退的步骤方法
- java安全框架下载文件_java安全框架之Permission学习笔记
- 分布式系统架构、微服务架构等架构区别
- Excel如何按照颜色排序
- 计算机操作系统——死锁的概念与处理
- java集合类-list
- Python项目--批量下载小姐姐壁纸
- 弘辽科技:2022年拼多多活动时间表是什么?促销方式有哪些?
- anaconda matplotlib绘图中文乱码解决
- Android----------Diglog对话框
- python while false是什么意思_Python3中真真假假True、False、None等含义详解
- 了解报表开发证书——FCRP
- java计算机毕业设计计算机组成原理教学网站源码+mysql数据库+系统+lw文档+部署
热门文章
- python交互式编程在哪里_终于明了python交互式编程入门
- 怎么用debug看jdbc查询的resultset中查出的数据_用了这个 ORM 工具,我只用一天就把项目数据库给换了
- 正态分布的前世今生:正态分布的进一步发展
- 数据挖掘在电信欺诈侦测中的应用
- html 无组件上传图片,无组件上传图片到数据库中,最完整解决方案
- android中的广播机制(动态注册)
- Git基础学习(黑马程序员笔记)
- C语言:编写一个程序,打印乘法“九九表”
- 计算机辅助设计技术案例,【智能科技学院】学院前沿技术运用课程组开展“计算机辅助设计”专题讲座...
- linux 烧录树莓派镜像,Linux命令行烧录树莓派镜像至SD卡