我正在使用 mvc webapi 创建一个 REST API 并努力寻找一个处理 POST 到嵌套资源的示例。
基本上,我想POST
使用如下 URL 对博客文章发表评论:
~/posts/2/comments
我还希望能够发送 DELETE 和PUTs
以下内容
~/posts/2/comments/5
我的路由注册应该是什么样的,我的方法签名应该是什么PostsController
样的?
谢谢!
我正在使用 mvc webapi 创建一个 REST API 并努力寻找一个处理 POST 到嵌套资源的示例。
基本上,我想POST
使用如下 URL 对博客文章发表评论:
~/posts/2/comments
我还希望能够发送 DELETE 和PUTs
以下内容
~/posts/2/comments/5
我的路由注册应该是什么样的,我的方法签名应该是什么PostsController
样的?
谢谢!
对于嵌套资源,我建议您为要访问的控制器/操作创建非常具体的路由。
routes.MapHttpRoute(
name: "Posts Routes",
routeTemplate: "api/posts/{postId}/comments/{commentID}",
defaults: new { controller = "Posts", action="CommentsForPosts" }
);
public HttpResponseMessage CommentsForPosts(int postId, int commentID) {
//go to work
}
嵌套资源的框架中没有约定,但路由让您可以灵活地映射您认为合适的控制器、方法和 URI