asp.net web apiのAttribute Routingを使用できます。
最初に、HttpConfiguration
、asp.net web apiテンプレートで有効にすると、WebApiConfig.cs
ファイルに表示されます。その後
using System.Web.Http;
namespace WebApplication
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API routes
config.MapHttpAttributeRoutes();
// Other Web API configuration not shown...
}
}
}
あなたはサンプルのため、ApiController
から継承しなければならないと、カスタムルートを定義するRoute
属性を使用することができ、コントローラを定義することができます。
[RoutePrefix("api/users")]
public class UsersController : ApiController
{
[HttpPost]
[Route("{id}/modify")]
public HttpResponseMessage PostModify(int id)
{
// code ...
}
}
RoutePrefix
は、すべての接頭辞を定義しますコントローラ上のアクション。したがって、PostModify
にアクセスするには、post
アクションで/api/users/6/modify
のようなルートを使用する必要があります。あなたが望んでいない場合は、RoutePrefix
を削除し、route属性に完全なURLを定義してください(/api/users/{id}/modify
など)。
また、このようなルートを定義id
引数の型保証することができます:
[RoutePrefix("api/users")]
public class UsersController : ApiController
{
[HttpPost]
[Route("{id:int}/modify")]
public HttpResponseMessage PostModify(int id)
{
// code ...
}
}
おかげで男を!! ...それは私が探していたまさにでした。それはうまくいった。私はこれの前に他のことを試みたし、それを働かせることができなかった。再度、感謝します。 – NicoRiff