7

Açık kaynak Attribute Routing, birden fazla yol önekine sahip olmasına izin verir. ASP.NET Web API 2.0'ın neden birden fazla RoutePrefix() olmasına izin vermiyor.ASP.NET Web API birden çok RoutePrefix

[RoutePrefix("api/v1/{abc}/Entity")] 
[RoutePrefix("api/v1/{abc}/{xyz?}/Entity")] 
public class MyApiController : ApiController 
{ 
    [Route("")] 
    public IHttpResult Get() 
    { 
     return Ok("Hello World"); 
    } 
} 
bir "~"

örnek ile de RoutePrefix geçersiz kılma eylemi yöntemine bir rota ekleyebilirsiniz

+1

WebApiController'da birden fazla RoutePrefix özniteliği ekleyebilirsiniz. Bkz. Https://3btechtalk.wordpress.com/2017/05/07/defining-multiple-route-prefix-in-asp-net-web-api-attribute-routing/ –

cevap

21

:

[RoutePrefix("api/v1/{abc}/Entity")] 
public class MyApiController : ApiController 
{ 
    [Route("")] 
    [Route("~/api/v1/{abc}/{xyz?}/Entity")] 
    public IHttpResult Get() 
    { 
     return Ok("Hello World"); 
    } 
} 

Bildirimi hattı: [Yolu ("~/ api/v1/{abc}/{xyz?}/Varlık ")]

+0

Vay, sakin! Bu çok kullanışlı. – Dan

+1

Kabul edilen cevap –

+2

olmalıdır. Bu neden kabul edilen cevaptır? Birden çok yol öneki, her yöntem için birden çok '[Rota]' özniteliğinden kaçınmaya yardımcı olabilir ve büyük bir api denetleyicide bakımı kolaylaştırmaya yardımcı olmak için uzun bir yol kat edebilir –

İlgili konular