1. 你的 xml 映射文件有没有 包装到 dll 里面 ..操作方法
在vs.net里右击User.hbm.xml-〉属性-〉生成操作-〉嵌入资源
2. xml 怎么写的
xml name 要这样设置 ??? 因为很简单 编译完成 dll 或者 exe 文件的程序集的名称 (一个项目就是一个dll 或者一个example )
<class name="wfapp_tools.User
用户的类名 , wfapp_tools
所在的程序集名称. " table="Users">
是啊,我的应该没错误吧,我的User.cs和User.hbm.xml都在项目下的classfolder文件夹中,并且User.cs的名称空间namespace testdb.classfolder也没错误啊
Assembly Name是装配件名,我是单一项目也就是项目名了,也就是User所在项目编译产生的.dll的前缀
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="wfapp_tools.User, wfapp_tools" table="Users">
<id name="Id" column="Id" type="int" unsaved-value="0">
<generator class="identity" />
</id>
<property name="EmailAddress" length="50" />
<property name="UserName" column="UserName" type="String" length="50"/>
<property name="Password" column="[Password]" type="String" length="50"/>
</class>
</hibernate-mapping>
3 .
如果用
cfg.AddAssembly();
User.hbm.xml编译是要设为,嵌入资源
否则
用
cfg.AddXmlFile("User.hbm.xml"); 在代码中搞定
参考 :
http://topic.csdn.net/t/20051117/17/4400615.html#