问题
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
- Create an MVC project
- Right click the project in solution explorer and select "Manage nuget packages"
- Select "include Prerelease"
- 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