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
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
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.
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.
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.
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!
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.
Create a MVC project, right-click to and select
Wait, after a while you should be good to go.