Я недавно добавил Microsoft.AspNet.WebApi.WebHost
в проект MVC WebAPI, который позволил бы мне использовать атрибут [Route("api/some-action")]
в моем действии. Я решил некоторые ошибки, используя эту статью, но не могу решить третью ошибку ниже. Добавленные исправленные ошибки ниже, чтобы получить обратную связь, если я сделал что-то не так.
Первая ошибка: на контроллере 'X' не найдено ни одного действия, соответствующего имени 'some-action'
Решение: добавлен config.MapHttpAttributeRoutes();
в метод Register
WebApiConfig.cs.
Вторая ошибка: System.InvalidOperationException Объект еще не был инициализирован. Убедитесь, что HttpConfiguration.EnsureInitialized() вызывается в коде запуска приложения после всех других кодов инициализации.
Решение: добавлен GlobalConfiguration.Configure(WebApiConfig.Register);
в Global.asax.cs Application_Start
Третья ошибка: System.ArgumentException: маршрут с именем "MS_attributerouteWebApi" уже находится в коллекции маршрутов. Имена маршрутов должны быть уникальными.
Решение =?
Я уже пытался очистить и удалить все библиотеки DLL из папки bin в соответствии с этим постом.