Visual Studio 2012中的WebApi2

21

如何在Visual Studio 2012中创建使用WebApi2的项目?

我需要创建空白项目还是MVC项目?

我不想安装Visual Studio 2013预览版,请帮忙。

5个回答

32

3
这些链接指向Web Platform Installer,看起来不再有Visual Studio 2012的ASP.NET和Web工具2013.1安装程序。ASP.NET和Web工具2013.2安装程序可通过Web PI获取,但似乎没有添加Web API 2模板。我在这里找到了2012.1安装程序https://www.microsoft.com/en-us/download/details.aspx?id=41532。 - Ryan Taylor
1
@RyanTaylor 你的评论非常到位。它应该是一个答案! - seebiscuit
@RyanTaylor安装了WT2013.1,但我在“添加新项目”对话框中没有看到那些模板。有什么建议吗? - seebiscuit

6

创建一个MVC项目,右键单击并选择

  1. 创建一个MVC项目
  2. 在解决方案资源管理器中,右键单击项目,选择“管理nuget包”
  3. 选择“包括预发行版”
  4. 搜索Web API并选择“Microsoft ASP.NET Web API”,确保版本为5.0.0-beta2(预发布版)

等待一段时间后,你就可以开始了。


看起来现在 Web API 5.1 有一个永久的 NUGET 包更新(非 beta 版),可以解决 Visual Studio 2012 的这个问题。只需对 Web API 包执行上述 nuget 包更新步骤,就应该可以解决问题。 - Ben Barreth

6
据我了解,Web API 2 等同于5.0.0-beta2版本,因此您可以按照Olav的描述从NuGet中获取。但是,如果您已安装VS2012.2更新,则可以使用Web API模板启动,而不仅仅是MVC模板。启动一个新项目,选择MVC,然后选择Web API模板。它不会添加太多内容,只是一些针对Web API量身定制的示例控制器和一些配置文件。对于一些在某些Build视频中展示的特定于VS2013的功能:恐怕您需要2013预览版才能使用这些功能。

3
我的初步研究让我采取了下面详细说明的手动配置方法,所以我实际上从未尝试过Olav的建议。如果那个方法有效,那可能是正确的方法。但如果不行,或者那种方法存在缺失,这里是我采取的步骤。我正在使用VS 2012 Update 3。
  • 从一个新的MVC 4 / Web API项目开始
  • 从包管理器控制台运行:

    Install-Package Microsoft.AspNet.WebApi -pre

我收到了一个警告,它跳过了_ViewStart.cshtml,但它给了我覆盖的选项。我选择了Yes。

  • 再次从包管理器控制台运行:

    Install-Package Microsoft.AspNet.Mvc -Pre

  • 根据这些说明更改web.config、views\web.config和areas\views\web.config。忽略升级步骤中的步骤1-5。此外,我不需要做任何关于WebHelpers的事情。

  • 根据这个答案的第二步,在web.config中添加对System.Web.Http 5.0的引用。
  • 如果在此时构建,将会得到一个编译器错误,指出Areas\HelpPage文件夹中的XmlDocumentationProvider没有完全实现接口。不确定这是怎么回事,但此时对我来说并不重要,所以我只是添加了两个缺失方法的空实现(提示:右键单击IDocumentationProvider并选择实现接口-它将添加两个缺失方法)。
我前几天做了这件事,现在我的记忆已经有点模糊了,但我认为这就覆盖了它。此时,我能够使用WebAPI2,包括基于属性的路由!

1
打开视图并选择包管理器控制台,然后粘贴以下命令并按回车键。
Install-Package Microsoft.AspNet.WebApi 

"

Package manager console将显示在底部。

"

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接