1.AddClass():Resource not found
通过Reflector就一目了然了,
由于嵌入资源的命名空间是根据存放的位置以及类库的命名空间来得到的,而不正确的位置会导致的Hibernate用反射无法找到该资源,需要根据对象的命名空间来确定资源文件的存放位置,通常存放在与对象CS文件同级目录即可。
AddClass()需要放在Configure()后边,因为Configure()是读取hibernate.cfg.xml的所有配置节点,而 AddClass()又需要这些配置。
使用AddClass(typeof(对象))后,需要删除hibernate.cfg.xml中对象的<mapping assembly="对象"></mapping>的节点,因为AddClass(typeof(对象))本身就是在mapping,配置中的mapping节点就是多余的了。
2. 此节点是必须配置的
<property name="proxyfactory.factory_class">
</property>
</property>
3.需要多要引用Castle.Core.dll、NHibernate.ByteCode.Castle.dll