2012-07-25 53 views
3

在VS 2010中WEB表格項目,我用nuget「install-package Microsoft.aspnet.webapi」。缺少Web API控制器類模板VS 2010

PM> install-package Microsoft.aspnet.webapi 嘗試解析依賴項'Microsoft.AspNet.WebApi.WebHost(≥4.0.20505.0)'。 嘗試解析依賴關係「Microsoft.Web.Infrastructure(≥1.0.0.0)」。 試圖解析依賴關係'Microsoft.AspNet.WebApi.Core(≥4.0.20505.0)'。 嘗試解析依賴項'Microsoft.AspNet.WebApi.Client(≥4.0.20505.0)'。 嘗試解析依賴關係'Microsoft.Net.Http(≥2.0.20505.0)'。 試圖解決依賴關係'Newtonsoft.Json(≥4.5.1)'。 'Microsoft.AspNet.WebApi 4.0.20505.0'已安裝。

但是,當我去「添加新項目...」時,在安裝的模板下,「Web API控制器類」不可用。我還需要安裝什麼才能使模板顯示。我沒有安裝MVC4,在模板出現之前我還需要它嗎?

enter image description here

回答

3

Nuget僅爲您提供運行Web API所需的程序集。

要使用MVC4 Web Api Visual Studio模板,您必須從這裏安裝MVC4包 - http://www.asp.net/web-api。安裝完成後,在「創建新項目」嚮導中,您必須選擇MVC4模板,然後在下一個窗口中選擇Web API項目。

請注意,如果您沒有明確需要MVC4應用程序,則這不是必需的。你可以使用Web API幾乎任何東西 - MVC3,帶有Web窗體,控制檯應用程序,WPF應用程序..它不依賴於MVC4。

+1

我有同樣的問題。正如你所說,我已經安裝了asp.net MVC 4,並且我也能夠創建mvc webapi項目。但與webforms我沒有得到webapi控制器類模板VS VS 2010? – PraveenLearnsEveryday 2012-08-01 08:06:26

0

我認爲你需要安裝ASP.NET MVC4的模板出現在列表中。

0

今天我面臨同樣的問題。即使我安裝了所有的dll。那麼我只是創建一個新的「網站」,而不是「Web應用程序」,Webapi控制器類模板出現在模板列表中。

奇怪,但爲我工作。你也可以試試它。

另一方面,您可以從NuGet安裝System.Web.Http dll。那麼你可以從ApiCOntroller類繼承你的CustomController類。

0

不要忘了,您需要將目標框架設置爲.NET 4.x才能看到ASP.NET MVC 4模板。

1

將目標框架更改爲4.0可以解決同樣的問題。