В моем ASP.NET проекта Web API, я следующие маршрутизации определены в Global.asax
:asp.net MVC - не может понять, почему маршрутизация не работает
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "{controller}/{action}"
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}"
);
У меня есть контроллер, называемый UserFeedController
с действием с следующая подпись:
public UserFeedResponseViewModel GetUserFeed(int id)
Когда я ввожу URL http://api.mydomain.com/UserFeed/GetUserFeed/4
я получаю 404. Почему второе правила маршрутизации не применяется?
MVC routing совершенно не в моих силах, чтобы понять.
Боже мой! До сих пор я не заметил, что код вызывает два отдельных метода: «MapRoute()» и «MapHttpRoute()». Почему на маршрутизаторах веб-API по-разному выполняется маршрутизация? Я изменил код, чтобы всегда использовать «MapHttpRoute()», и теперь я получаю поведение, которое я ожидаю ... – David