nhibernateCodeSmith中自带的NHibernate模板怎样用啊

nhibernate  时间:2021-07-22  阅读:()

NHibernate有哪些对象?

SessionFactory (NHibernate.ISessionFactory) 对属于单一数据库的编译过的映射文件的一个线程安全的,不可变的缓存快照。

它是Session的工厂,是ConnectionProvider的客户。

可以持有一个可选的(第二级)数据缓存,可以在进程级别或集群级别保存可以在事物中重用的数据。

会话,Session (NHibernate.ISession) 单线程,生命期短促的对象,代表应用程序和持久化层之间的一次对话。

封装了一个ADO.NET连接。

也是Transaction的工厂。

保存有必需的(第一级)持久化对象的缓存,用于遍历对象图,或者通过标识符查找对象。

持久化对象(Persistent)及其集合(Collections) 生命期短促的单线程的对象,包含了持久化状态和商业功能。

它们可能是普通的对象,唯一特别的是他们现在从属于且仅从属于一个Session。

一旦Session被关闭,他们都将从Session中取消联系,可以在任何程序层自由使用(比如,直接作为传送到表现层的DTO,数据传输对象)。

临时对象(Transient Object)及其集合(Collection) 目前没有从属于一个Session的持久化类的实例。

他们可能是刚刚被程序实例化,还没有来得及被持久化,或者是被一个已经关闭的Session所实例化的。

事务Transaction (NHibernate.ITransaction) (可选) 单线程,生命期短促的对象,应用程序用它来表示一批工作的原子操作。

是底层的ADO.NET事务的抽象。

一个Session某些情况下可能跨越多个Transaction 事务。

ConnectionProvider (NHibernate.Connection.ConnectionProvider) (可选)ADO.NET连接的工厂。

从底层的IDbConnection抽象而来。

对应用程序不可见,但可以被开发者扩展/实现。

TransactionFactory .sf.hibernate.TransactionFactory) (可选)事务实例的工厂。

对应用程序不可见,但可以被开发者扩展/实现。

在上面的轻型结构中,程序没有使用Transaction / TransactionFactory 或者ConnectionProvider API,直接和ADO.NET对话了。

NHibernate配置文件写法

NHibernate的联合主键 <?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.0"> <class name="ounts.Data.JJDepartments,ounts.Data" table="PersonManager_JJDepartments"> &posite-id> <key-property name="ID" column="ID" type="String" length="2" /> <key-property name="MainJJDepartmentID" column="MainJJDepartmentID" type="String" length="2" /> <posite-id> <property name="Name" column="Name" type="String" length="40"></property> <property name="SimpleName" column="SimpleName" type="String" length="6"></property> <property name="Description" column="Description" type="String" length="50"></property> </class> </hibernate-mapping> 基本写法 <?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.0"> <class name="NHibernate.Examples.QuickStart.User, NHibernate.Examples" table="users"> <id name="Id" column="LogonId" type="String" length="20"> <generator class="assigned" /> </id> <property name="UserName" column= "Name" type="String" length="40"/> <property name="Password" type="String" length="20"/> <property name="EmailAddress" type="String" length="40"/> <property name="LastLogon" type="DateTime"/> </class> </hibernate-mapping>

CodeSmith中自带的NHibernate模板怎样用啊

一、用CodeSmith自带模版生成实体类 选中模版(businessobject.cst),右键执行(Execute),然后选择保存目录、数据库、表,最后生成(Generate)。

1、新建一个C#模版,导包<%@ Assembly Name="SchemaExplorer" %><%@ Import Namespace="SchemaExplorer" %>//声明SourceTable<%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Default="" Optional="False" Category="Context" Description="源表" %>2、设置SourceTable先执行Tools-Build然后在属性杂项一栏中设置SourceTable选择数据库,再选择表。

3、写封装类namespace Train%> <%foreach(ColumnSchema column in this.SourceTable.Columns)%> <% set } <%}%> } }4、执行Tools-Run 保存补充:添加数据库方法在左边SchemaExplorer中选第二项ADD添加Name:TrainProviderType:sqlSchemaProviderConnectionString:server=.;database=Train;uid=sa;pwd="1234"; 這不必要圖 如果你還看不懂、、、、 关于CodeSmith中自带的NHibernate模板怎样用啊这个问题~你上搜搜问问真是正确的选择~ 败笔网络安全小组中秋开放3天注册! 【公告】庆中秋,送极品源码+软件 大型踢楼活动! 参考地址: /thread-8844-1-1.html 这次踢楼送的软件都是价值最少于500-3000升至上几万的软件和源码 这次送出来的东西列表: 抓鸡软件套装 (败笔T楼奖励) 免杀远控(一个月)(败笔T楼奖励) 无壳DDOS (网络僵尸最早版本) (败笔T楼奖励) 免杀捆绑器 (败笔T楼奖励) 传还原下载者(K杀软) (败笔T楼奖励) DDOS网络生成源码+锁定下载地址 (败笔T楼奖励) 驱动的DDOS攻击软件(稳定+防肉鸡掉线)(败笔T楼奖励) 此次活动礼品都是市面价值连城的东西 活动奖品均可用拜金币兑换 比例晚上8点踢楼活动贴出来 请各大会员敬请关注

打开海外主机域名商出现"Attention Required"原因和解决

最近发现一个比较怪异的事情,在访问和登录大部分国外主机商和域名商的时候都需要二次验证。常见的就是需要我们勾选判断是不是真人。以及比如在刚才要访问Namecheap检查前几天送给网友域名的账户域名是否转出的,再次登录网站的时候又需要人机验证。这里有看到"Attention Required"的提示。我们只能手工选择按钮,然后根据验证码进行选择合适的标记。这次我要选择的是船的标识,每次需要选择三个,一...

标准互联(450元)襄阳电信100G防御服务器 10M独立带宽

目前在标准互联这边有两台香港云服务器产品,这不看到有通知到期提醒才关注到。平时我还是很少去登录这个服务商的,这个服务商最近一年的促销信息比较少,这个和他们的运营策略有关系。已经从开始的倾向低价和个人用户云服务器市场,开始转型到中高端个人和企业用户的独立服务器。在这篇文章中,有看到标准互联有推出襄阳电信高防服务器100GB防御。有三款促销方案我们有需要可以看看。我们看看几款方案配置。型号内存硬盘IP...

Sparkedhost($8/月)美国迈阿密AMD Ryzen高性能VPS;免费100G高防

sparkedhost怎么样?sparkedhost主机。Sparkedhost于2017年7月注册在美国康涅狄格州,2018年收购了ClynexHost,2019年8月从Taltum Solutions SL收购了The Beast Hosting,同年10月从Reilly Bauer收购了OptNode Hosting。sparkedhost当前的业务主要为:为游戏“我的世界”提供服务器、虚拟...

nhibernate为你推荐
iphone12或支持北斗导航苹果12屏幕设置百度创业史百度的创始人是谁北漂论坛请问北票有论坛吗做视频的免费软件有没有免费做视频的软件 汉化的联通玩电信游戏我朋友是联通的网,想玩电信的游戏但是发现都很卡软件测试工程师待遇现在IT行业的软件测试工程师怎么样,待遇怎么样?flash菜单FLASH菜单清除地址栏怎样清除地址栏上面的网址暗黑三试玩暗黑3怎么区别试玩版和正式版教育学院实验小学新疆教育学院实验小学怎么样
cc域名 vps动态ip 提供香港vps 新秒杀 瓦工 标准机柜尺寸 智能骨干网 idc资讯 183是联通还是移动 空间技术网 ftp免费空间 银盘服务是什么 根服务器 全能空间 免备案cdn加速 netvigator 双十二促销 xshell5注册码 phpinfo restart 更多