日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NHibernate 异常及解决办法(长期添加中)

發布時間:2023/12/20 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NHibernate 异常及解决办法(长期添加中) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Mapping 錯誤:

?

1) Could not determine type for:Namespance.Class,AssemblyName, for columns: NHibernate.Mapping.Column(ColumnName)

通常是Mapping中的 type attribute設定錯誤,在Assembly找不到。如

<property name="PropertyName" column="ColumnName" type="Namespance.Class,AssemblyName">

如果沒有column , 那么就是 PropertyName作為ColumnName。

?

2)The following types may not be used as proxies:
Namespance.Class: method methodName should be 'public/protected virtual' or 'protected internal virtual'

Namespance.Class: type should not be sealed

類中的 public/protected 方法沒有使用 virtual 修飾,加上virtual就可以了。因為NHibernate 對于Many-to-one的one方,采取了lazyLoad,因此在加載Many的時候,會為one這生成Proxy類,因此One不能是一個seald類,并且所有公開方法都需要使用virtual, 如Child的屬性Parent,如果想獲得Child的時候,不加載Parent數據,那么Parent必須符合以上的規則。

另外一種辦法是,把one一段的對象設定為<class lazyLoad=false>

?

3)NHibernate.PropertyNotFoundException: Could not find a getter for property 'Id' in class 'Namespance.Class,AssemblyName'.

?找不到屬性 Id的 getter,這個getter也可以換成為setter。 補充get 和 set,就可以解決。

?

4)?These classes referenced by 'extends' were not found:

FullName:Namespace.class - Name:class

在繼承映射中,如subclass ,需要一個Extends的 attribute,但是這個extends所指向的父類的名稱,在mapping中并不存在。填寫正確的 extends就可以。?

?

5)?MappingException: An association from the table Crimson_Info refers to an unmapped class: Crimson.Contents.Content?

轉載于:https://www.cnblogs.com/fantasylu/archive/2010/04/21/1717324.html

總結

以上是生活随笔為你收集整理的NHibernate 异常及解决办法(长期添加中)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。