我应该把什么放入WebAPI控制器?

时间:2013-10-28 08:26:47

标签: asp.net-mvc asp.net-mvc-4

无法找到有关操作类型的任何信息,我可以将其提取到WebAPI控制器中。

例如,我们有两个实体:BusinessProcessWorkItem。当然,当我们谈论显示关于这个实体的信息(return View())时,我应该创建简单的Controller,但我有类似的方法:

  1. 保存工作项目信息
  2. 将工作项目分配给其他用户
  3. 完成工作项目
  4. 更改工作项目到期日期
  5. 停止/启动商务流程
  6. 对于所有这些方法,我将在Ajax与客户端进行对话。

    我应该将它们放入Controllers,还是我只能存储return View()个动作,并将ajax conversation methods提取到WebAPI中?

    顺便说一句,我将拥有多个Controller(ManagerWorkItemController,EmployeeWorkItemController),但我的上层方法(例如Finish workitem)对他们来说都是通用的。

    是否有理由创建WebAPI?

1 个答案:

答案 0 :(得分:0)

就我个人而言,我认为将动作调用与api调用分开会更简洁。 一个单独的课程可以让你清楚每个班级的职责。 你仍然可以在一个控制器中同时执行动作和api调用,但是由你来决定你希望你的代码流程有多清晰。 每个数据模型最好有一个api控制器。并查看REST API模式。