日期:2014-05-17  浏览次数:20578 次

Coolite和Ext.net的问题
最近接手一个工作,在老系统(使用了Coolite)上,添加一些新的页面,但新的页面使用必须使用Ext.net。

因为Coolite和Ext.net都会引用一个同名的程序集(Newtonsoft.Json).

但使用Ext.net引用的Newtonsoft.Json,原先使用Coolite的页面就会报“未能加载文件或程序集“Newtonsoft.Json”或它的某一个依赖项”。

同样的,如果使用Coolite引用的Newtonsoft.Json,Ext.net的页面就会报“未能加载文件或程序集“Newtonsoft.Json”或它的某一个依赖项”

用ILASM看了下,发现虽然Newtonsoft.Json同名,但它们的公钥不一样,如下所示

.assembly extern Newtonsoft.Json
{
  .publickeytoken = (30 AD 4F E6 B2 A6 AE ED )                         // 0.O.....
  .ver 4:5:0:0
}

Ext.net


.assembly extern Newtonsoft.Json
{
  .publickeytoken = (9A D2 32 B5 0C 3E 64 44 )                         // ..2..>dD
  .ver 3:5:0:0
}

Coolite.Ext.Web

为了能让程序能正常的跑起来,我该怎么做?请教各位高手
------最佳解决方案--------------------
我估计是没人回答了,还是直接结贴的比较好
------其他解决方案--------------------
我试过把Ext.net引用的那个文件改名成“Newtonsoft.Json2”,但跑起来的时候会报一个错“未能加载文件或程序集“Newtonsoft.Json2”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。”
------其他解决方案--------------------
可能是版本问题,尝试使用同一版本的项目进行编译
------其他解决方案--------------------
有没有高手请指教