我在使用 Razor 引擎的 ASP.NET MVC4 项目中有以下场景:
- 我有至少 4 种不同形式的视图。
- 我想在相同的操作映射下处理所有表单 POST 。
实际上,这 4 个表单发布到不同的 Route Mapping,如下所示:
POST: /User/FilterRolesInUse/15
POST: /User/RemoveRoles/15
POST: /User/FilterRolesNotInUse/15
POST: /User/AddRoles/15
我想知道是否可以在同一个路由映射下处理所有 4 个表单,所有表单都发布到/User/Roles/15
然后控制器可以区分提交了哪个表单。这个概念类似于:
class UserController : Controller {
//
// POST: /User/Roles/
public ActionResult Roles(int? id, object form) {
return DelegateToFormLogic(id, form);
}
}
我只是想知道是否有可能,因为我真的想保持 URL一致。
欢迎任何意见或建议。