涤生之Enjoy code

General principles of programmer

导航

NHibernate基础学习时遇到的问题

Nhibernate的实现

一、单表的实现

1) 配置,可以放入在WebConfig中或放入单独文件中

生成ISessionFactroy,一般采用单例模式实现。

NHibernate.Cfg.Configuration cfg = new NHibernate.Cfg.Configuration();  
                          cfg.AddAssembly(Assembly.GetExecutingAssembly());
factory 
= cfg.BuildSessionFactory();


Assembly.GetExecutingAssembly():即获取当前运行的程序集

2) 实体类的hbm.xml文件中如果Class的属性 lazy = true,则实体类的Properties必须是virtual。

3) 在使用 IList注意有范型与非范型之分,在Using System.Collections,表示使用普通的IList;在Using System.Collections.Generic,表示使用范型的IList

4) 使用generate=guid的示例如下
hbm.xml文件

 

<id name="Id" column="LogonId" type="Guid"

        unsaved-value
="00000000-0000-0000-0000-000000000000">

      
<generator class="guid" />

</id>

实体类的文件

 

private Guid id;

public Guid Id

        
{

            
get return id; }

            
set { id = value; }

        }

实际调用时,无需为此列分配值,系统会自动生成。

posted on 2007-07-18 15:47  涤生  阅读(518)  评论(0编辑  收藏  举报