我希望将ASP.NET Web API添加到Visual Studio 2012中开发的ASP.NET MVC 4 Web应用程序项目中 . 我必须执行哪些步骤才能为项目添加正常运行的Web API?我只知道我所知道的一切 .
如果我需要提供更多详细信息,请与我们联系 .
我希望将ASP.NET Web API添加到Visual Studio 2012中开发的ASP.NET MVC 4 Web应用程序项目中 . 我必须执行哪些步骤才能为项目添加正常运行的Web API?我只知道我所知道的一切 .
如果我需要提供更多详细信息,请与我们联系 .
7 回答
To add WebAPI in my MVC 5 project.
添加对System.Web.Routing,System.Web.Net和System.Net.Http dlls的引用,如果不存在的话
右击控制器文件夹>添加新项> Web>添加Web API控制器
VS.将相应地修改Web.config
如果没有,则添加Application_Start(){}方法
重建并测试
构建一个简单的html页面
上述解决方案完美无缺 . 我更喜欢在选择项目模板时选择Web API选项,如下图所示
Note: 该解决方案适用于Visual Studio 2013或更高版本 . 最初的问题是在2012年提出的,它是2016年,因此添加了Visual Studio 2013或更高版本的解决方案 .
更新2013年11月22日 - 这是最新的WebApi包:
原始答案(这是一个较旧的WebApi包)
更多details .
只要在控制器文件夹下添加“WebApi Controller”,Visual Studio就会自动处理依赖关系;
我需要执行的步骤是:
添加对
System.Web.Http.WebHost
的引用 .添加
App_Start\WebApiConfig.cs
(请参阅下面的代码段) .在
Global.asax.cs
中导入名称空间System.Web.Http
.在
MvcApplication.Application_Start()
(文件Global.asax.cs
)中调用WebApiConfig.Register(GlobalConfiguration.Configuration)
,然后注册默认Web应用程序路由,否则优先 .添加一个派生自
System.Web.Http.ApiController
的控制器 .然后我可以从the tutorial(您的第一个ASP.NET Web API)中学到足够的东西来定义我的API控制器 .
App_Start \ WebApiConfig.cs:
的Global.asax.cs:
Update 10.16.2015:
Word有它,必须安装NuGet包Microsoft.AspNet.WebApi才能使上述工作正常 .
在开始合并MVC和Web API项目之前,我建议您阅读cons and pros以将这些项目分开作为不同的项目 . 一个非常重要的事情(我自己)是身份验证系统,它完全不同 .
如果您需要在MVC和Web API上使用经过身份验证的请求,您需要记住Web API是RESTful(不需要保留会话,简单的HTTP请求等),但MVC不需要 .
要查看实现的差异,只需在模板中在Visual Studio 2013中创建2个不同的项目:一个用于MVC,另一个用于Web API(不要忘记在创建期间打开“个人身份验证”) . 您将在AuthencationControllers中看到很多不同之处 .
所以,请注意 .
您可以从nuget安装,如下图所示:
或者,在程序包管理器控制台上运行以下命令行: