问题

异常:in expected: <end-of-text> (possibly an invalid or unmapped class name was used in the query) [from Customer]

解决方案:查看HQL语句查询的是否是实体类,映射文件属性是否正确:复制到输出目录à始终复制 。。生成操作à嵌入的资源。

问题2

异常:缺少必需的属性“name”。

解决方案:查看映射文件里,是否哪个<property>节点缺少name属性

问题3

异常:“NHibernate.Proxy.CastleProxyFactory”的类型初始值设定项引发异常。

解决方案:Nhibernate版本问题。。删除数据访问层与界面层对Nhibernate的引用,改为引用nhibernate2.0组件,改配置文件(App.config/web.config),到NHibernate-.GA-src/src/NhibernateText下面复制app.config.中Nhibernate的配置信息。

问题4

异常:Could not find the dialect in the configuration

   解决方案:配置文件错误。WEB项目应在web.config配置文件里配置Nhibernate。应用程序在App.config里配置Nhibernate.

问题5

异常:could not resolve property: customerId of: CompanyModels.Customer [from CompanyModels.Customer c where c.customerId=:customerId]

解决方案:HQL语句里字段是代表实体类的属性,区分大小写。

问题6

异常:不应有 <hibernate-mapping xmlns='urn:nhibernate-mapping-2.0'>。

解决方案:把2.0改为2.2即可,在CodeSmith中生成映射文件时为2.0,而Nhibernate2对应2.2

问题7

异常:元素 命名空间“urn:nhibernate-mapping中的“bag”。 的子元素 命名空间“urn:nhibernate-mapping中的“many-to-many”。 无效。应为可能元素的列表: 命名空间“urn:nhibernate-mapping中的“loader, sql-insert, sql-update, sql-delete, sql-delete-all, filter”。。

解决方案:多对多关系映射错误,看映射文件中<many-to-many>节点是否有多个,如果有请删除一个。只要引用对应的实体类即可。如:

<bag name="OrderProducts" table="OrderProduct" inverse="false" lazy="true" cascade="all-delete-orphan">

<key>

<column name="`Order`" length="4" sql-type="int" not-null="true"/>

</key>

<many-to-many class="CompanyModels.Order, CompanyModels">

<column name="Order" length="4" sql-type="int" not-null="true"/>

</many-to-many>

<many-to-many class="CompanyModels.Product, CompanyModels">

<column name="Product" length="4" sql-type="int" not-null="true"/>

</many-to-many>

</bag>

删除第一个<many-to-many>即可解决.

NHibernate的常见问题及解决方案的更多相关文章

  1. 《PDF.NE数据框架常见问题及解决方案-初》

    <PDF.NE数据框架常见问题及解决方案-初> 1.新增数据库后,获取标识列的值: 解决方案:    PDF.NET数据框架,已经为我们考略了很多,因为用PDF.NET进行数据的添加操作时 ...

  2. XHTML CSS 常见问题和解决方案

    原文地址:XHTML CSS 常见问题和解决方案 作为前端开发人员,在日常的页面制作时,不可避免的会碰上这样那样的问题,我挑选了其中的一些进行总结归档,希望对大家会有所帮助: 1.如何定义高度很小的容 ...

  3. 自学华为IoT物联网_06 智慧家庭物联网常见问题及解决方案

    点击返回自学华为IoT物流网 自学华为IoT物联网_06 智慧家庭物联网常见问题及解决方案 1. 家庭中遇到的问题 2.1 华为智慧家庭概念的发展历程 2.2 华为智慧家庭的解决方案架构 智慧家庭主要 ...

  4. 自学华为IoT物联网_05 能源工业物联网常见问题及解决方案

    点击返回自学华为IoT物流网 自学华为IoT物联网_05 能源工业物联网常见问题及解决方案 1. 1 能源工业--油田业务面临的三大挑战 故障处理不及时: 部分油田开采难道大.机械故障较多.现场发生的 ...

  5. 自学华为IoT物联网_04 车联网常见问题及解决方案

    点击返回自学华为IoT物流网 自学华为IoT物联网_04 车联网常见问题及解决方案 1.1 可以预见的车联网未来 车辆对车辆.车辆对道路.车辆对网络通信 车辆对外发送车辆状态信息 周边环境信息发送给车 ...

  6. 自学华为IoT物联网_03 公共事业物联网常见问题及解决方案

    点击返回自学华为IoT物流网 自学华为IoT物联网_03 公共事业物联网常见问题及解决方案 本文从以下六项公共事业,看看物联网的解决方案: 停车问题 路灯管理问题 消防栓管理问题 井盖管理问题 水表管 ...

  7. ARKit从入门到精通(11)-ARKit开发常见问题及解决方案

    转载请注明出处:ARKit从入门到精通(11)-ARKit开发常见问题及解决方案 本文主要介绍ARKit开发过程中一些常见问题 1.ARKit框架无法导入问题 2.ARKit运行黑屏或者白屏问题:Un ...

  8. Android Studio使用过程中常见问题及解决方案

    熟悉Android的童鞋应该对Android Studio都不陌生.Android编程有两个常用的开发环境,分别是Android Studio和Eclipse,之前使用比较多的是Eclipse,而现在 ...

  9. Redis常见问题及解决方案

    在Redis的运维使用过程中你遇到过那些问题,又是如何解决的呢?本文收集了一些Redis的常见问题以及解决方案,与大家一同探讨. 码字不易,欢迎大家转载,烦请注明出处:谢谢配合 你的Redis有big ...

随机推荐

  1. 使用flexbox来布局web应用

    使用 flexbox 可以帮助你设计出引人注目的布局,并且在pc端或移动端能够很好的缩放.告别使用浮动的 <div> 元素.绝对定位 和一些JavaScript hacks, 使用仅仅几行 ...

  2. cocos2dx3.5 HTC One X 某些UI白屏或使用ClippingNode造成部分手机白屏

    public Cocos2dxGLSurfaceView onCreateView() { Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSu ...

  3. 关于中值滤波算法,以及C语言实现(转)

    源:关于中值滤波算法,以及C语言实现 1.什么是中值滤波? 中值滤波是对一个滑动窗口内的诸像素灰度值排序,用其中值代替窗口中心象素的原来灰度值,它是一种非线性的图像平滑法,它对脉冲干扰级椒盐噪声的抑制 ...

  4. java 正则匹配int型

    private static Pattern DIGIT_PATTERN = Pattern.compile("=\\d++"); Matcher goodsTypeMatcher ...

  5. Unity3D ——强大的跨平台3D游戏开发工具(五)

    第九章 图形用户界面类G.U.I 您在玩很多3D游戏的时候,不知是否注意到在游戏界面中,总有一些图形和文字信息是不随着3D视角的改变而改变的.这也是由于游戏本身的要求而决定的.比如说英雄的生命值,聊天 ...

  6. JavaScript------处理Json数据

    //JSON相关函数 JSON.parse(); //将JSON字符串转换为JavaScript对象JSON.stringify(); //将JavaScript值转换为JSON字符串 1.//JSO ...

  7. 【Xilinx-Petalinux学习】-07-OpenCV的软硬件处理速度对比

    有空了设计一个hls的图像处理IP. 通过hls设计ip模块实现opencv的图像处理. 对比软件和硬件的图像处理速度.

  8. BZOJ2720: [Violet 5]列队春游

    2720: [Violet 5]列队春游 Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 173  Solved: 125[Submit][Status] ...

  9. linux下安装mysql(编译mysql源码)

    编译所需软件地址 http://mysql.mirror.kangaroot.net/Downloads/  -- 下载需要的mysql版本例如mysql-5.5.39.tar.gz    目前还不太 ...

  10. tomcat 修改编码(Java之负基础实战)

    1.找到server.xml 在tomcat安装路径/conf/server.xml 2.设置POST和GET使用相同编码 useBodyEncodingForURI="true" ...