2013-01-09 22 views
0

我正在使用NHibernate(v 3.3.0.4000)和memcache(v 3.1.0.4000這是最新的可用)的項目。當使用屬性延遲加載memcache時的PropertyAccessException

我有一個很大的字段包含相當大的字符串。由於我不想在每次調用時加載此字段,因此我使用Fluent Nhibernate將該屬性配置爲「延遲加載」。

除非啓用了memcache,否則一切正常(我的屬性按需加載)。的iget此異常:

NHibernate.PropertyAccessException: The type System.Object can not be assigned to a property of type System.String setter of XYZ ---> System.ArgumentException: Impossible de convertir l'objet de type 'System.Object' en type 'System.String'. 

我想這個問題是關係到「NHibernate.Caches.MemCache」,這是相當老似乎沒有活着的版本。

我想知道是否有人設法運行帶有惰性屬性的memcache。如果沒有,是否可以禁用單個屬性的緩存?

回答

0

看起來這是一個已知的bug: Retrieving object from 2nd cache with lazy property fails

而且,幸運的是,它是固定在最新版本(3.3.2,截至今日)

剛剛更新的NHibernate和問題將會消失。

+0

謝謝Diego!你的提示絕對幫助我!它現在就像一個魅力。 – Jacob