【发布时间】:2020-04-26 18:40:35
【问题描述】:
使用默认路由
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
我可以达到像 GET http://ip:port/api/dogs/Henry 这样的隐式操作:
public class DogsController:ApiController
{
public Dog Get(string id) => DogRepository.GetDog(id);
}
但是,据我所知,这需要操作参数名称与路由定义匹配:“id”。我喜欢描述性的参数名称,那么如何将参数名称从“id”更改为“dogName”?
我知道一个控制器和一个路由很明显,但我的 api 中可能有猫、金鱼和大象,所以“dogName”在所有情况下都不是描述性参数名。
【问题讨论】:
标签: c# routes asp.net-web-api2