NHibernate的常见问题及解决方案
问题1 :
异常: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的常见问题及解决方案的更多相关文章
- 《PDF.NE数据框架常见问题及解决方案-初》
<PDF.NE数据框架常见问题及解决方案-初> 1.新增数据库后,获取标识列的值: 解决方案: PDF.NET数据框架,已经为我们考略了很多,因为用PDF.NET进行数据的添加操作时 ...
- XHTML CSS 常见问题和解决方案
原文地址:XHTML CSS 常见问题和解决方案 作为前端开发人员,在日常的页面制作时,不可避免的会碰上这样那样的问题,我挑选了其中的一些进行总结归档,希望对大家会有所帮助: 1.如何定义高度很小的容 ...
- 自学华为IoT物联网_06 智慧家庭物联网常见问题及解决方案
点击返回自学华为IoT物流网 自学华为IoT物联网_06 智慧家庭物联网常见问题及解决方案 1. 家庭中遇到的问题 2.1 华为智慧家庭概念的发展历程 2.2 华为智慧家庭的解决方案架构 智慧家庭主要 ...
- 自学华为IoT物联网_05 能源工业物联网常见问题及解决方案
点击返回自学华为IoT物流网 自学华为IoT物联网_05 能源工业物联网常见问题及解决方案 1. 1 能源工业--油田业务面临的三大挑战 故障处理不及时: 部分油田开采难道大.机械故障较多.现场发生的 ...
- 自学华为IoT物联网_04 车联网常见问题及解决方案
点击返回自学华为IoT物流网 自学华为IoT物联网_04 车联网常见问题及解决方案 1.1 可以预见的车联网未来 车辆对车辆.车辆对道路.车辆对网络通信 车辆对外发送车辆状态信息 周边环境信息发送给车 ...
- 自学华为IoT物联网_03 公共事业物联网常见问题及解决方案
点击返回自学华为IoT物流网 自学华为IoT物联网_03 公共事业物联网常见问题及解决方案 本文从以下六项公共事业,看看物联网的解决方案: 停车问题 路灯管理问题 消防栓管理问题 井盖管理问题 水表管 ...
- ARKit从入门到精通(11)-ARKit开发常见问题及解决方案
转载请注明出处:ARKit从入门到精通(11)-ARKit开发常见问题及解决方案 本文主要介绍ARKit开发过程中一些常见问题 1.ARKit框架无法导入问题 2.ARKit运行黑屏或者白屏问题:Un ...
- Android Studio使用过程中常见问题及解决方案
熟悉Android的童鞋应该对Android Studio都不陌生.Android编程有两个常用的开发环境,分别是Android Studio和Eclipse,之前使用比较多的是Eclipse,而现在 ...
- Redis常见问题及解决方案
在Redis的运维使用过程中你遇到过那些问题,又是如何解决的呢?本文收集了一些Redis的常见问题以及解决方案,与大家一同探讨. 码字不易,欢迎大家转载,烦请注明出处:谢谢配合 你的Redis有big ...
随机推荐
- STM32的时钟树深入详解以及RCC配置
在STM32上如果不使用外部晶振,OSC_IN和OSC_OUT的接法 如果使用内部RC振荡器而不使用外部晶振,请按照下面方法处理: 1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT ...
- IOS开发-ObjC-Category的使用
在IOS移动App开发中,经常会出现以下情况:定义好了一个类,但后来需求升级或改变之后需要对这个类增加功能,这样的话往往需要修改类的结构,这样就会导致不能预期的问题产生,所以Obj-C提供了一种叫做C ...
- 为什么建立TCP连接需要三次握手,为什么断开TCP连接需要四次握手,TIME_WAIT状态的意义
为什么建立TCP连接需要三次握手? 原因:为了应对网络中存在的延迟的重复数组的问题 例子: 假设client发起连接的连接请求报文段在网络中没有丢失,而是在某个网络节点长时间滞留了,导致延迟到达ser ...
- CodeForces 755C PolandBall and Forest (并查集)
题意:给定每一点离他最远的点,问是这个森林里有多少棵树. 析:并查集,最后统计不同根结点的数目即可. 代码如下: #pragma comment(linker, "/STACK:102400 ...
- bootstrap-datepicker的简单使用
先说datepicker. github上的地址是:https://github.com/eternicode/bootstrap-datepicker. 效果如下: 在bundle里面引用添加js ...
- 绘图——Android绘图基础:Canvas、Paint等
Android的绘图应该继承View组件,并重写它的onDraw(Canvas canvas)方法即可. 重写onDraw(Canvas canvas)方法时涉及一个绘图API:Canvas,Canv ...
- Angular - - $compile编译服务与指令
$compile 这是个编译服务.编译一段HTML字符串或者DOM的模板, 产生一个将scope和模板连接到一起的函数. 编译服务主要是为指令编译DOM元素,下面的一大段也是主要介绍指令的. 下面是一 ...
- js判断浏览器在PC中打开还是移动设备中打开
var browser = { versions: function () { va ...
- Iframe 自适应高度并实时监控高度变化的js代码
不得不用到iframe,且被强烈要求不能让它出现滚动条!嵌入的页面肯定是高度不一的,页面中也不能出现大片空白,所以也不能写死高度!真是麻鬼烦啊!google N次 + 百度M次 + 试验了1605次之 ...
- Java多线程(学习篇)
Java多线程:(学习篇) 1.什么是线程 2.线程状态 3.线程中断 4.线程交互 5.同步机制 6.锁机制 7.堵塞队列与堵塞栈 8.条件变量.原子量.线程池等 9.线性安全类和Callable与 ...