繁体   English   中英

Web API - Web窗体项目安全性错误

[英]Web API - Web Forms Project Security Error

我在使用Web API的项目时遇到问题。

在global.asax文件中,我有这个,它给出了一个错误

System.Web.Http.WebHost.dll中出现“System.TypeLoadException”类型的异常,但未在用户代码中处理

附加信息:覆盖成员时违反了继承安全规则:'System.Web.Http.WebHost.Routing.HostedHttpRoute.get_RouteTemplate()'。 覆盖方法的安全性可访问性必须与被覆盖的方法的安全性可访问性相匹配。

在这条线上

RouteTable.Routes.MapHttpRoute(name:="DefaultApi", routeTemplate:="api/{controller}/{id}", defaults:=New With { _
  Key .id = RouteParameter.[Optional] _

})

我升级了一些包。 这曾经是我的packages.config文件

 <package id="Microsoft.AspNet.WebApi.Client" version="4.0.20710.0" targetFramework="net45" />
 <package id="Microsoft.AspNet.WebApi.Core" version="4.0.20710.0" targetFramework="net45" />
 <package id="Microsoft.AspNet.WebApi.WebHost" version="4.0.20710.0" targetFramework="net45" />

它们现在升级为:

<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="4.0.30506.0" targetFramework="net45" />

知道为什么我升级后才开始出现这个错误吗?

非常感谢你!

我有项目A引用项目B.在项目B中有控制器,我在那里为这些控制器调用RouteTable.Routes.MapHttpRoute。

在我的案例中我发现问题是项目中的WebApi NuGet包版本高于引用的项目B.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM