我正在使用Visual Studio 2010与.Net Framework 4和ASP.NET MVC 3。
我希望将我的控制器方法作为Web API提供给外部应用程序(如网站,移动应用程序等)。我尝试在网上找到解决方案,但是所有链接指向VS 2013的“Web API2控制器”,例如this one。在这个阶段,我无法升级Visual Studio和.net框架。
有什么方法可以使用.NET 4和ASP.NET MVC 3来实现这个目标吗?
答案 0 :(得分:11)
要在MVC3项目中获取Web API,请执行以下更改 -
第1步 - 使用.Net 4创建MVC3项目。
第2步 - 使用程序包管理器安装Web API - 安装包Microsoft.AspNet.WebApi -Version 4.0.30506
第3步 - 在Global.asax中添加以下路由并引用using System.Web.Http;
-
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
第4步 - 创建控制器 -
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Mvc;
namespace MvcApplication2.Controllers
{
public class ValuesController : ApiController
{
public string Get()
{
return "1";
}
}
}
第5步 - 执行项目并转到网址 - / api / values 。多数民众赞成,我们运行了Web API。
答案 1 :(得分:2)
MVC 3没有WebAPI。升级到MVC 4或使用ServiceStack实现RESTful层