我将Nuget包Ninject.Web.WebApi从3.2.3更新到3.2.4。更新后,GlobalConfiguration不再包含Configure函数。这样,Global.asax.cs中的以下代码就不再工作了:
GlobalConfiguration.Configure(WebApiConfig.Register);
我尝试了以下方法:
WebApiConfig.Register(GlobalConfiguration.Configuration);
但这并没有奏效。
有什么想法吗?
编辑:
在我通过nuget安装更新后,它从packages.config:中删除了以下两个条目
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net451" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net451" />
在csproj文件中,它删除了对System.Web.Http.WebHost.的引用
在我将它们添加回来后,项目进行了编译,但WebApi控制器不起作用,因为Ninject不注入参数。错误为:
尝试创建"HomeController"类型的控制器时出错。请确保控制器具有无参数的公共构造函数。
最新更新中有什么根本性的变化吗?
3.2.4引入了一个突破性的更改,您可以在发行说明中阅读。您现在需要安装一个额外的nuget包Ninject.Web.WebApi.WebHost.