0

NHibernate 2.1.2通过 Castl ActiveRecord 使用。我想使用SysCache. 但我得到了错误:

无法将“NHibernate.Caches.SysCache.SysCacheProvider”类型的对象转换为“NHibernate.Cache.ICacheProvider”类型。

我该如何纠正?

4

2 回答 2

1

我猜您的项目中本地有一些程序集,而 GAC 中的其他程序集与 Mauricio 所说的版本不匹配。确保 NHibernate.Caches.SysCache.dll 在您的 bin 文件夹中(对于您的网站),是正确的版本,并检查您在 GAC 中没有它。

于 2011-02-10T09:57:55.733 回答
0

我找到了原因。这是我们的一个讨厌的问题。我的团队已将所有与 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.dllCompany.NHibernate.dll提及Company.NHibernate.dllin 的名称时provider_class,一切顺利。

感谢所有试图帮助我的用户。

于 2011-02-12T12:18:59.547 回答