Controller在MVC模型中的作用是什么?

What is the role of Controller in MVC model?

我已经阅读了这里的一些答案和一些关于 MVC 的文章,但我仍然对控制器在 MVC 应用程序中的角色感到困惑。

我在一本书上读到,模型是自包含的,功能独立于视图和控制器。并且该模型包含业务逻辑和数据访问代码。 Source

也在最佳答案中 这里 What goes into the "Controller" in "MVC"?

但是这里的其他答案说它是代表业务逻辑的控制器

Where can I find a dead-simple explanation of MVC?

那么正确答案是什么?

ASP.NET MVC 框架将 URL 映射到被称为控制器的 classes。 控制器处理传入请求,处理用户输入和交互,并执行适当的应用程序逻辑。控制器class通常调用单独的视图组件为请求生成 HTML 标记。

控制器class负责以下处理阶段:

  • 找到适当的操作方法来调用并验证它 可以调用。
  • 获取要用作操作方法参数的值。
  • 处理操作方法执行期间可能发生的所有错误。
  • 提供默认 WebFormViewEngine class 以呈现 ASP.NET 页面类型(视图)。

这个答案是正确的

Model:该组件表示MVC框架中application.The模型的数据和业务逻辑,与application.The 模型组件专注于跟踪 application.It 的状态,还定义了数据的业务规则,意味着如何更改和操作数据。

视图: 视图为模型提供用户界面 (UI)。视图的主要工作(功能)以用户可理解的格式表示信息。它使用UI组件,如HTML、CSS、Jquery等

控制器:控制器充当视图和模型之间的中介。它负责控制模型和视图之间的数据传输。它将用户操作映射到模型 updates.The 控制器层有助于 select 最合适的视图并将其传递给用户。

实际上,控制器是视图和模型之间的中介。他们没有定义业务逻辑。模型负责业务逻辑。

Wikipedia 的表述非常简单:控制器接受输入并将其转换为模型或视图的命令。

https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

控制器充当视图和模型之间的中介class。它只是用来消除模型和视图之间的依赖关系 classes。 请参考这个link.. https://www.tutorialspoint.com/mvc_framework/mvc_framework_controllers.html