Я боролся с настройкой WebApi2, основанной на маршрутизации атрибутов, и у меня закончились идеи, что может быть проблемой. Следующий код - это новый проект WebApi от Visual Studio 2015. В нем нет изменений. Это просто не работает.Почему эта маршрутизация атрибута webapi2 не работает?
Отклик говорит следующее:
<Error>
<Message>
No HTTP resource was found that matches the request URI 'http://.../services/webapi2/api/dummies/dummymethod'.
</Message>
<MessageDetail>
No type was found that matches the controller named 'dummies'.
</MessageDetail>
</Error>
То, что я сделал до сих пор:
- Я проверил документацию пропустил ли я что-то - все, кажется, хорошо, и приспосабливает для документации.
- Я проверил доступные ответы найти здесь ли я что-то полезное - я попробовал все, что я нашел, но безуспешно
Спасибо за любую помощь заранее!
DummyController.cs
using System.Web.Http;
namespace WebApi2.Controllers
{
[RoutePrefix("Dummies")]
public class Dummy : ApiController
{
[Route("dummymethod")]
public string Get()
{
return "asdasd";
}
}
}
WebApiConfig.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
namespace WebApi2
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
}
Установленные пакеты:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net452" />
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net452" developmentDependency="true" />
<package id="Newtonsoft.Json" version="6.0.4" targetFramework="net452" />
</packages>