Sun*_*dar 9 .net json.net assembly-loading tridion tridion2009
我正在使用.Net dll Newtonsoft.Json in my C# TBB来处理组件并生成Json数据.我已经添加了这个dll GAC[Global Assembly Cache],它也可以运行.但有时它不起作用,我发布时出现以下错误:
JScriptException: Expression 'RenderComponentPresentation()' had error 'Could not load file or assembly 'Newtonsoft.Json, Version=4.0.5.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The system cannot find the file specified.'
但是当我在Tridion中预览页面时它运行正常.要解决此问题,我们重新启动Tridion Services,重新启动后,我们发布了一个很好的页面.但是这个问题一再出现.有没有办法永久解决这个问题?
最近,当我已经在发布过程中再次发布同一页面时,我可以重现问题.第二次发布尝试返回上述错误,但第二次发布尝试失败后第一次发布尝试完成并返回Success.任何想法为什么这种奇怪的行为.
有时您的平台设置不正确.通过右键单击项目并将框架设置为4.0(或任何兼容的)来使用dll来检查这一点.然后,关闭应用程序并再次尝试运行它.您的平台可能已设置为.NET Framework 4客户端配置文件.
如果不是因为它在重新启动服务后效果更好,我认为这是关于NewtonSoft.Json所依赖的程序集.如果有任何此类程序集,那么它们也需要在GAC中注册.请注意,发布者进程不一定与Tridion内核(执行预览)具有相同的应用程序文件夹或探测路径.
正如克里斯所说,也许这是一个线程问题,但有时候这种奇怪现象会在内存压力下出现.您是否可以监控发布商流程的内存使用情况,以查看是否存在泄漏?
| 归档时间: |
|
| 查看次数: |
991 次 |
| 最近记录: |