所以我在一个空的MVC 5应用程序中安装了Umbraco CMS,让它工作,然后当我尝试添加一个MVC 5控制器时,我意识到Umbraco只支持< MVC 4,所以控制器取代了参考并停止了工作。
启动了一个新的MVC 4项目并安装了Umbraco CMS,但是当我尝试构建时,我收到以下错误:
The type or namespace name 'HttpConfiguration' could not be found (are you missing a using directive or an assembly reference?) in WebApiConfig.cs file.
我正确地添加了参考System.Web.Http(v4.0,运行时版本4.0.30319)但是在WebApiConfig.cs文件中它以某种方式找到了类仍然认为它错了:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
namespace MyProj
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
}
知道可能出现什么问题吗?
提前致谢
deSex
我更新了我的NuGet包,现在它可以工作了。我认为是System.Web.Mvc.dll需要更新,虽然它将Web.config更改为指向错误的版本。改变之后,它起作用了。
答案 0 :(得分:0)
有时最好只删除System.Web.Http作为参考,然后再将其添加为快速修复,然后进行清理和重建。
此外,您可以尝试进入System.Web.Http的属性并将特定版本更改为false。
如果不这样,我会查看web.config绑定重定向。
希望有所帮助。