加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-4 – Azure计算模拟器中MVC4 Web API runnin中的Glo

发布时间:2020-12-16 03:22:22 所属栏目:asp.Net 来源:网络整理
导读:我昨天注意到,当我调试我的Web角色时,我的本地 Windows Azure模拟器中发生了这个错误.但部署的项目仍然适用于Azure.今天,我部署的项目失败了同样的错误.请帮忙! 这个代码块在我的Global.axax.cs文件的Application_Start方法中: GlobalConfiguration.Config
我昨天注意到,当我调试我的Web角色时,我的本地 Windows Azure模拟器中发生了这个错误.但部署的项目仍然适用于Azure.今天,我部署的项目失败了同样的错误.请帮忙!

这个代码块在我的Global.axax.cs文件的Application_Start方法中:

GlobalConfiguration.Configuration.MessageHandlers
  .Add(new BasicAuthMessageHandler()
  {
     PrincipalProvider = new PrincipalProvider()
  });

抛出此错误:

违反类型的继承安全规则:’System.Net.Http.Formatting.JsonContractResolver’.派生类型必须与基本类型的安全可访问性匹配,或者不太容易访问.

当我开始调试时(这是一个Azure Web角色项目).但有时候(实际上它似乎每隔一次我调试就会发生)……我需要做的就是停止并重新启动调试器.是什么导致了这个问题?

解决方法

这与Newtonsoft.Json程序集有关.我从项目的引用中删除了它,清理并重建了项目(为了更好的测量),然后重新添加它并重新重建项目.错误消失了.

System.Net.Http.Formatting.JsonContractResolver派生自Newtonsoft.Json.另一个线程(这里是:http://forums.asp.net/t/1812274.aspx/3/10)通过从GAC中删除Newtonsoft.Json来解决同样的问题,因为它在那里并且System.Net.Http.Formatting不是.这显然解决了一个人的问题,虽然它对我来说似乎很落后(为什么基类型不能在GAC中而派生类型不是?是不是错误说问题是另一种方式?).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读