SSIS中的Newtonsoft.json dll问题

时间:2018-10-23 03:19:09

标签: asp.net json.net msbi script-component

任何人都可以帮助解决此问题。 我在脚本组件中添加了第三方参考(Json newtonsoft)dll,但是当我通过sql server agent运行程序包时,却出现了错误

无法加载文件或程序集“ Newtonsoft.Json,版本= 10.0.0.0,文化=中性,PublicKeyToken = 30ad4fe6b2a6aeed”或其依赖项之一。系统找不到指定的文件。

我已经在gac中注册了该dll,并且在uat中也使用了相同的dll(甚至相同版本),但是在prod上执行时却失败了。 有什么建议吗?

2 个答案:

答案 0 :(得分:0)

首先,我将检查web.config中的版本是否与DLL的版本匹配。右键单击newstonsoft.dll,然后转到产品选项卡的“详细信息”选项卡。

然后,您的web.config中应具有相应的程序集标识,例如

   <dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" 
    publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-10.0.0.0" 
     newVersion="10.0.0.0" />
    </dependentAssembly>

如果您的解决方案中有多个项目,则右键单击您的解决方案,管理该解决方案的nuget软件包,然后转到“合并”选项卡以检查您是否没有多个版本的newtonsoft

答案 1 :(得分:0)

最终解决了该问题- 注册DLL的命令在DLL名称之前有空格。通过cmd注册时,它显示注册成功,但是该文件夹未在gac_msil位置I中创建。E. dll未注册。