Шаги, которые мне нужно было выполнить:
- Добавить ссылку на
System.Web.Http.WebHost
.
- Добавить
App_Start\WebApiConfig.cs
(см. Фрагмент кода ниже).
- Импортировать пространство имен
System.Web.Http
в Global.asax.cs
.
- Звоните
WebApiConfig.Register(GlobalConfiguration.Configuration)
в MvcApplication.Application_Start()
(в файле Global.asax.cs
), перед тем регистрации маршрута веб - приложения по умолчанию, которые в противном случае приоритет.
- Добавьте контроллер, производный от
System.Web.Http.ApiController
.
После этого я смог бы извлечь урок из вашего руководства (Ваш первый веб-API ASP.NET), чтобы определить мой контроллер API.
App_Start \ WebApiConfig.cs:
using System.Web.Http;
class WebApiConfig
{
public static void Register(HttpConfiguration configuration)
{
configuration.Routes.MapHttpRoute("API Default", "api/{controller}/{id}",
new { id = RouteParameter.Optional });
}
}
Global.asax.cs:
using System.Web.Http;
...
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
WebApiConfig.Register(GlobalConfiguration.Configuration);
RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
Обновление 16.10.2015:
У Word есть это, пакет NuGet Microsoft.AspNet.WebApi должен быть установлен для работы вышеупомянутого.
System.Net.Http
, но кроме этого, это работало как шарм!