NHibernate 2.1.2Castl ActiveRecord経由で使用しています。を使用して二次キャッシュを設定したかったのSysCacheです。しかし、私はエラーが発生しました:
タイプ「NHibernate.Caches.SysCache.SysCacheProvider」のオブジェクトをタイプ「NHibernate.Cache.ICacheProvider」にキャストできません。
どうすればこれを修正できますか?
NHibernate 2.1.2Castl 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.dllprovider_class
私を助けようとしたすべてのユーザーに感謝します。