我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”类型。
我该如何纠正?
我猜您的项目中本地有一些程序集,而 GAC 中的其他程序集与 Mauricio 所说的版本不匹配。确保 NHibernate.Caches.SysCache.dll 在您的 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.SysCachein的名称provider_class。
当我与 in 合并NHibernate.Caches.SysCache.dll并Company.NHibernate.dll提及Company.NHibernate.dllin 的名称时provider_class,一切顺利。
感谢所有试图帮助我的用户。