【问题标题】:Newtonsoft reference breaks web servicesNewtonsoft 参考中断了 Web 服务
【发布时间】:2011-02-07 16:30:44
【问题描述】:

我在我的网站上添加了一个引用 NewtonSoft.JSON 库的 WebService,它给了我以下错误:

'Formatting' 是 'Newtonsoft.Json.Formatting' 和 'System.Xml.Formatting' 之间的模糊引用

我显然不想更改下面的 .NET 页面,以前有人遇到过这个问题吗?有什么方法可以禁用 WebServices 的引用?

【问题讨论】:

    标签: asp.net web-services


    【解决方案1】:

    正如您可能已经知道的那样,发生这种情况是因为您引用的命名空间中都存在格式化并且编译器无法区分它。

    你为什么不 CNTRL+F 并将所有格式替换为 Newtonsoft.Json.Formatting 或 System.Xml.Formatting

    【讨论】:

    • 是的,我知道,但引用存在于内部 asp.net 页面中
    • c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\DefaultWsdlHelpGenerator.aspx
    【解决方案2】:

    刚刚意识到该程序集是在 Web 配置页面部分中直接引用的,当我删除它时它已修复。因为这是 mvc 2,所以应该没问题...

    谢谢

    【讨论】:

      【解决方案3】:

      正如您所说,这是因为您的 Web.config 命名空间元素中有 Newtonsoft.Json。实际上我真的很想要它,因为我在前端的几个地方都使用了 JsonConvert.SerializeObject。它使用标准的“使用”语法,因此我决定只使用以下代码导入该类,而不是在我的代码中查找和替换:

      <add namespace="JsonConvert=Newtonsoft.Json.JsonConvert" />
      

      【讨论】:

        猜你喜欢
        • 2011-01-10
        • 2014-07-19
        • 2010-11-15
        • 2012-09-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多