![](/img/trans.png)
[英]ASP.NET Web API Attribute Routing: RoutePrefix with Route Parameter
[英]map route parameter to bool in asp.net web API
所以我现在注册了以下路线:
configuration.Routes.MapHttpRoute(
name: "MediaHandler",
routeTemplate: "api/mediahandler/{action}/{id}",
defaults: new { controller = "PortalAsset", id = RouteParameter.Optional }
);
这是控制器的样子:
public class MediaHandlerController : ApiControllerBase
{
///...
[HttpGet]
[ActionName("download")]
public async Task<HttpResponseMessage> DownloadAsset(long id)
{
// action
}
我想向控制器添加布尔参数 - isPreview
并希望通过以下方式映射路由:
id
=1893, isPreview
=falseid
=1893, isPreview
= true有没有办法我可以做到这一点?
使用属性路由,您可以这样做
[RoutePrefix("api/mediahandler/download")]
public class MediaHandlerController : ApiControllerBase
{
[HttpGet]
[Route("{id}")]
public async Task<HttpResponseMessage> DownloadAsset(long id)
{
return DownloadAsset(id, false);
}
[HttpGet]
[Route("{id}/preview")]
public async Task<HttpResponseMessage> DownloadAssetPreview(long id)
{
return DownloadAsset(id, true);
}
private async Task<HttpResponseMessage> DownloadAsset(long id, bool isPreview)
{
// action
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.