NHibernate的初学几点错误记录

   在学NHibernate时,xml的配置经常弄得很不爽,现在记录几个以作记录。我在http://www4.it168.com/jtzt/shenlan/tech/NHibernate/里面的http://tech.it168.com/n/2007-03-22/200703220910228.shtml按照里面的步骤来,发现有几个错误。

1---Stone.Model.Person.hbm.xml(2,2): XML validation error: 未能找到元素“urn:nhibernate-mapping-  2.0:hibernate-mapping”的架构信息。

  解决的方法是将类的mapping xml的“urn:nhibernate-mapping-  2.0"中的2.0-----------2.2

2---The following types may not be used as proxies:
Stone.Model.Person: method get_Id should be virtual
Stone.Model.Person: method set_Id should be virtual
Stone.Model.Person: method get_Name should be virtual
Stone.Model.Person: method set_Name should be virtual
Stone.Model.Person: method get_Id should be virtual
Stone.Model.Person: method set_Id should be virtual
Stone.Model.Person: method get_Name should be virtual
Stone.Model.Person: method set_Name should be virtual

解决的方法:

引起问题的原因:

NHibernate 1.2 默认为类启用了延迟加载功能

解决方法:

方法1.在映射文件 class 标签中添加 Lazy="false" 属性

例 

方法2.为每个实体类的属性成员 添加 “ virtual ” 修饰符;

例:   

      public virtual  int id
      {
         get {  return m_id; }
         set {  m_id = value; }
      }

待续。。。。

你可能感兴趣的:(ORM学习,validation,xml,class,types,table)