我尝试实现一个支持 JsonApi 标准的 ASP.NET Web Api 控制器(http://jsonapi.org/主要由 Ember.js 使用)
URL 可能包含破折号。但 C# 代码中对应的方法名称可能不包含破折号。
我的 javascript 尝试发布到
http://localhost:50000/jsonapi/activity-exercises
但我无法实现可以接收该请求的端点。我努力了:
[HttpPost]
public HttpResponseMessage ActivityExercises([FromBody] ActivityExerciseEntry value)
{
// ...
理想情况下,应该有一个属性添加到方法中,以在 URL 中指定映射的操作名称。这样的属性存在吗?
我的路线映射如下所示:
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapHttpRoute("EmberJsonApi", "jsonapi/{action}/{id}", new { controller = "JsonApi", id = RouteParameter.Optional });
routes.MapHttpRoute("DefaultApi", "api/{controller}/{id}", new { id = RouteParameter.Optional });
}