NHibernate 2.1.2
Castl ActiveRecord経由で使用しています。を使用して二次キャッシュを設定したかったのSysCache
です。しかし、私はエラーが発生しました:
タイプ「NHibernate.Caches.SysCache.SysCacheProvider」のオブジェクトをタイプ「NHibernate.Cache.ICacheProvider」にキャストできません。
どうすればこれを修正できますか?
NHibernate 2.1.2
Castl ActiveRecord経由で使用しています。を使用して二次キャッシュを設定したかったのSysCache
です。しかし、私はエラーが発生しました:
タイプ「NHibernate.Caches.SysCache.SysCacheProvider」のオブジェクトをタイプ「NHibernate.Cache.ICacheProvider」にキャストできません。
どうすればこれを修正できますか?
Mauricioが言っているように、プロジェクトにローカルにいくつかのアセンブリがあり、GACにバージョンが一致していないアセンブリがあると思います。NHibernate.Caches.SysCache.dll が (Web サイトの) bin フォルダーにあり、正しいバージョンであることを確認し、GAC にないことを確認します。
理由がわかりました。それは私たちからの厄介な問題でした。私のチームは、Castle ActiveRecord 関連のすべてのアセンブリを とマージしilmerge.exe
、名前を付けたとしCompany.NHibernate.dll
ます。と合併NHibernate.Caches.SysCache.dll
していませんCompany.NHibernate.dll
。NHibernate.Caches.SysCache.dll
の横に置いて のCompany.NHibernate.dll
名前を述べNHibernate.Caches.SysCache
ましたprovider_class
。
とマージNHibernate.Caches.SysCache.dll
して代わりにCompany.NHibernate.dll
の名前を述べたとき、すべてがうまくいきました。Company.NHibernate.dll
provider_class
私を助けようとしたすべてのユーザーに感謝します。