我的团队想要从WCF升级到Web API。我们有一个工作的asp.net Web表单应用程序,我们已经从VS2010导入到VS2012。到现在为止还挺好。
但是现在当我尝试创建一个单独的Web API项目时,我发现没有可用的Web API模板。 我能找到的最接近的事情是创建一个MVC 4应用程序并将项目模板设置为WebAPI 。我遵循这种方式,一切都完美无缺。我有一个带有示例控制器的工作API,我可以通过从浏览器调用来调用它。
唯一的缺点是,这种特殊方法带来了自己的包袱。我创建的MVC 4项目包含JQUERY和其他库,以及一些我可能不需要的其他文件夹。我想要的只是Web API结构 - 而不是额外的行李。
我尝试使用在线搜索找到模板,但我发现的软件包无法正常运行且评级很差。
我希望我已正确说明了我的问题。我现在期待一些反馈:)谢谢。
答案 0 :(得分:24)
在Visual Studio 2013中
<强>结果
从我所看到的,Visual Studio执行以下操作:
备注强>
随后,我建议执行相同的步骤,首先右键单击Controllers文件夹而不是项目。这会将新控制器放在Controllers文件夹中而不是根级别。
遵循以上步骤后,Visual Studio自述文件:
Visual Studio已将ASP.NET Web API 2的完整依赖项添加到项目&#39; RowersCode.Web&#39;中。
项目中的Global.asax.cs文件可能需要进行其他更改才能启用ASP.NET Web API。
添加以下命名空间引用:
- 使用System.Web.Http;
- 使用System.Web.Routing;
如果代码尚未定义Application_Start方法,请添加以下方法:
protected void Application_Start()
{
}
- 醇>
将以下行添加到Application_Start方法的开头:
GlobalConfiguration.Configure(WebApiConfig2.Register);
答案 1 :(得分:0)
经过大量研究,我已经能够找到解决这个问题的方法。让我举例说明我对 Visual Studio版本的解决方案。
VS 2012
正如我在问题中提到的,在VS2012中没有明确的方法来创建Web API项目。您必须通过创建MVC 4应用程序并将项目模板设置为WebAPI 来实现。然后,一旦你完成了这个并且你的Web API功能正常,你可以安全地删除额外的行李,如Jquery库和其他东西,因为这些东西绝对没有用在你的项目中。
VS 2013
在VS2013中,添加和管理Web API项目之后会有更好的方法。目前我正在使用VS2013作为Web API,所有的东西都按照我的意愿落实到位。请看这个链接,你会得到一个更好的主意
http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api
我希望这些信息可以帮助所有Web API新手。特别是对于那些想要升级到Web API或将Web API添加到现有项目的人。