好吧,当我们第一次运行Web api项目时,通常在WebApiConfig中有这个
config.Routes.MapHttpRoute(
"DefaultApi",
"api/{controller}/{id}",
new { id = RouteParameter.Optional }
);
然后,如果我想使用除{controller}以外的其他路线,该怎么办?
config.Routes.MapHttpRoute(
"DefaultApi",
"api/queries/{query}/{id}",
new { id = RouteParameter.Optional }
);
我有我的自定义类来检索这样的名称列表:
public class GetNameListQuery
{
[HttpGet]
public IEnumerable<String> GetNames(){
return new String[] { "John" , "Adams" };
}
}
因此,当我运行URI“ mylocalhost / api / queries / GetNameList”时,我得到的名称为“ John”和“ Adams”。我是.NET的新手,不确定是否有任何方法可以执行此类操作。感谢您的帮助。谢谢!!
答案 0 :(得分:0)
在您的路线配置中:
routes.MapRoute(
"DefaultApi2",
"api/queries/{action}",
new { controller = "Query" }
);
然后创建控制器查询
public class QueryController : ApiController
{
[HttpGet]
public IEnumerable<String> GetNames()
{
return new String[] { "John", "Adams" };
}
}
访问此路线:{{3}}