【发布时间】:2017-03-09 12:30:10
【问题描述】:
我对 MVC 和 this 和 this 等类似问题进行了一段时间的研究。
但是,他们没有回答我的问题。在很多 MVC 示例(ASP.NET MVC 和 JAVA MVC)中,它们通常为模型提供字段 E.G(姓名、年龄等),然后允许视图“读取”这些字段。
但据我了解,视图不应该知道模型,因为如果视图知道,那么它不是(正确)封装的。
但是,图片显示视图知道模型以显示正确的数据。
如果我理解正确的话,模型可以是系统的业务逻辑,而视图不应该与之连接。
假设我的模型从数据库中获取数据,那么仍然是我的模型是我的业务逻辑而不是数据库,还是我想错了?
所以我的问题是
- 视图是否应该知道模型以使用正确的数据?
- 控制器的工作是从 E.G 数据库中获取数据并从中创建模型,并且视图应该使用模型数据进行显示吗?
- 什么是模型业务逻辑? (请不要用字段来解释)
【问题讨论】:
-
我喜欢认为我的 UI 由三个部分(Model.View、Controller)组成。这些仅形成应用程序的顶层,下面是 BL,下面是持久性。因此,MVC 部分中的模型只是 UI 的模型,在这种情况下,是的,视图需要了解模型。
标签: c# model-view-controller architecture