学习NHibernate的时候遇到的几个问题
最近一段时间在学习NHibernate,暂时先不管它NHiberNate是什么东西,先把我在学习中遇到的几个问题记载以来,如果有人遇到同样的问题,也好少走弯路。
我的NHibernate版本为:0.9.10.0
1:建立了一个配置文件,编译时遇到了这样的问题“命名空间“urn:nhibernate-mapping-2.0”中的“class”。 的子元素 命名空间“urn:nhibernate-mapping-2.0”中的“property”。 无效。应为可能元素的列表: ‘urn:nhibernate-mapping-2.0:meta urn:nhibernate-mapping-2.0:jcs-cache urn:nhibernate-mapping-2.0:cache urn:nhibernate-mapping-2.0:id urn:nhibernate-mapping-2.0:composite-id‘。”。
配置文件名称:RecorderDT.hbm.xml
内容:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" >
<class name="Data.RectypeDT, Data" table="RecType">
<property name="RecTypeId" type="Int32" column="RecTypeId" insert="false">
<generator class="identity"/>
</property >
<property name="RecTypeName" type="String(10)" column="RecTypeName" />
</class>
</hibernate-mapping>
错误原因:
在property元素的子元素之前,必须是 <id> 或 <composite-id>子元素。
所以,修改后的配置文件内容:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" >
<class name="Data.RectypeDT, Data" table="RecType">
<id name="RecTypeId" type="Int32" column="RecTypeId" insert="false">
<generator class="identity"/>
</id>
<property name="RecTypeName" type="String(10)" column="RecTypeName" />
</class>
</hibernate-mapping>
我的NHibernate版本为:0.9.10.0
1:建立了一个配置文件,编译时遇到了这样的问题“命名空间“urn:nhibernate-mapping-2.0”中的“class”。 的子元素 命名空间“urn:nhibernate-mapping-2.0”中的“property”。 无效。应为可能元素的列表: ‘urn:nhibernate-mapping-2.0:meta urn:nhibernate-mapping-2.0:jcs-cache urn:nhibernate-mapping-2.0:cache urn:nhibernate-mapping-2.0:id urn:nhibernate-mapping-2.0:composite-id‘。”。
配置文件名称:RecorderDT.hbm.xml
内容:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" >
<class name="Data.RectypeDT, Data" table="RecType">
<property name="RecTypeId" type="Int32" column="RecTypeId" insert="false">
<generator class="identity"/>
</property >
<property name="RecTypeName" type="String(10)" column="RecTypeName" />
</class>
</hibernate-mapping>
错误原因:
在property元素的子元素之前,必须是 <id> 或 <composite-id>子元素。
所以,修改后的配置文件内容:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" >
<class name="Data.RectypeDT, Data" table="RecType">
<id name="RecTypeId" type="Int32" column="RecTypeId" insert="false">
<generator class="identity"/>
</id>
<property name="RecTypeName" type="String(10)" column="RecTypeName" />
</class>
</hibernate-mapping>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?