WebAPIConfig
config.Routes.MapHttpRoute(
name: "TestApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
我的 API 控制器:
public class TestController : ApiController
{
[HttpPost]
public string Send([FromBody] string id)
{
return "Got " + id;
}
}
这一切都很好,直到我将PARAM “ID”的名称更改为让我们在我的 API 过程中说“输入”。
我的(错误)假设
我的印象是,通过将 {xx} 括号放在路由表 url 上,我们实际上是在声明将在请求调用中使用任何第一个参数。
根据我的小样本,这似乎不正确。
问题 1:
这是否意味着如果我有 10 个 API 方法(例如注册、登录、注销、发送电子邮件 ...)而不是标准默认值 get/post/put/delete ....我将需要 10 个单独的路由每个条目?
问题 2:
另外,我们如何在路由表上表示一个 API 需要一类 POCO 字段?我们是否在 MapHttpRoute 上声明了每个单独的字段名称?