
[英]WebAPI 2. Respond to all HTTP verbs with the same controller method
[英]Is it possible to set a webapi controller http method generically?
我有一个带有 Blazor WASM 前端的 WebApi 后端,我想避免使用指向 api 资源的魔术字符串。 因此我想建立一个这样的查找
public static class Apiurls // Lookup-Table
{
private static string Apiprefix => "/_api/v1/";
public static class Users // Users-Controller
{
public static string UsersPrefix => ApiPrefix + "Users/";
public static class Get // Get-Endpoint
{
public const string HttpMethod = "GET";
public const string Template = "{id}";
public static string Build(string id) => UsersPrefix + id;
}
}
}
然后我想在我的 controller 中使用查找
public class UsersController
{
// common way
[HttpGet("{id}")]
public Task<IActionResult> Get(string id) { .. }
// what I'm trying to do
[HttpMethod(ApiUrls.Users.Get.Method)]
[Route(ApiUrls.Users.Get.Template)]
public Task<IActionResult> Get(string id) { .. }
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.