aspnet/Mvc — pull request #1122 by javiercn (2014-09-11 04:15:40+00:00)
Title: [Fixes #739] Attribute Routing: Multiple routes per-action

1. Support multiple [Http*] attributes on an action.
2. Support multiple [Route] attributes on a controller and on an action.
3. Support creating multiple attribute routes using [AcceptVerbs("...", Template ="...")]
4. Detect attribute routed actions during action discovery
and return one action per [Http*], [Route] or [AcceptVerbs] attribute found on the method when there is
at least one valid attribute route.
5. Merge all the HTTP methods of [Http*] and [AcceptVerbs] attributes in a method during action discovery
when there are no valid attribute routes defined on the action.
6. Build one action descriptor per controller [Route] + action [Http*], [AcceptVerbs] or [Route] combination
in an action.
7. Disallow the use of attributes that do not implement IActionHttpMethodProvider and
IRouteTemplateProvider simultaneously in methods that define attribute routed actions and throw an
exception during startup.
8. Disallow mixing attribute routed and non attribute routed actions on the same method and throw an
exception during startup.
9. Disallow creating attribute routed actions that have same template and have an HTTP method in common
on the same action and throw an exception during startup.