WebApi2 in visual studio 2012

一笑奈何 提交于 2020-01-12 12:08:48

问题


How can I create a project that uses WebApi2 in visual studio 2012?

Do I have to create with a blank project or do I have to create a MVC project?

I don't want to install Visual Studio 2013 preview, please help.


回答1:


You need to install ASP.NET and Web Tools 2013.1 for Visual Studio 2012 which adds the Web API 2 and MVC 5 templates




回答2:


Create a MVC project, right-click to and select

  1. Create an MVC project
  2. Right click the project in solution explorer and select "Manage nuget packages"
  3. Select "include Prerelease"
  4. Search for web api and select "Microsoft ASP.NET Web API", make sure the version is 5.0.0-beta2 (Prerelease)

Wait, after a while you should be good to go.




回答3:


As far as I know, Web API 2 is equal to the 5.0.0-beta2, so you can just pull that from NuGet as described by Olav.

However, if you've installed the VS2012.2 update, you can start with a Web API template, not just with a MVC template. Start a new project, select MVC and then select the Web API template. It won't add that much, just a few example controllers and some configuration files tailored for Web API.

For specific VS2013 features like they've shown in some Build video's: I'm afraid you would need the 2013 Preview in order to use those.




回答4:


My initial research led me to take the manual configuration approach I detail below, so I actually never tried Olav's suggestion. If that works, that's probably the way to go. But if not, or if there are missing pieces to that approach, here are the steps I took. I'm using VS 2012 Update 3.

  • Start with a new MVC 4 / Web API project
  • From the package manager console, run:

    Install-Package Microsoft.AspNet.WebApi -pre

I received a warning that it was skipping _ViewStart.cshtml but it gave me the option to overwrite. I chose Yes.

  • Again from the package manager console, run:

    Install-Package Microsoft.AspNet.Mvc -Pre

  • Change web.config, views\web.config, and areas\views\web.config according to these instructions. Ignore steps 1 - 5 under Upgrade Steps. Also, I didn't need to do anything concerning WebHelpers.

  • Add references to System.Web.Http 5.0 to web.config according to step 2 of this answer.
  • If you build at this point, you'll get a compiler error stating that XmlDocumentationProvider in the Areas\HelpPage folder doesn't fully implement the interface. Not sure what that's all about, but at this point it's not important to me so I just added empty implementations to the two missing methods (tip: right click on IDocumentationProvider and select implement interface - it will add the two missing methods).

I did this a couple days ago and my memory is already getting fuzzy, but I think that covers it. At this point I'm able to use WebAPI2 including attribute-based routing!




回答5:


Open view and select package manager console and paste following command and press enter.

Install-Package Microsoft.AspNet.WebApi 

Package manger console will display at bottom.



来源:https://stackoverflow.com/questions/18349128/webapi2-in-visual-studio-2012

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!