0

私は、NHibernate (v 3.3.0.4000) と memcache (v 3.1.0.4000 が利用可能な最新のもの) を使用するプロジェクトに取り組んでいます。

かなり大きな文字列を含む大きなフィールドがあります。すべての呼び出しでこのフィールドをロードしたくないので、プロパティを Fluent Nhibernate で「遅延読み込み」として構成しました。

memcache が有効になっている場合を除き、すべて正常に動作します (私のプロパティはオンデマンドで読み込まれます)。この例外を取得します:

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 を実行できたかどうか知りたいです。そうでない場合、単一のプロパティのキャッシュを無効にすることは可能ですか?

4

1 に答える 1

0

これは既知のバグのようです: 遅延プロパティを使用して 2 番目のキャッシュからオブジェクトを取得すると失敗します

幸いなことに、最新のリリース (3.3.2、現在) で修正されています。

NHibernate を更新するだけで、問題はなくなります。

于 2013-01-10T02:22:29.617 に答える