再次认识ASP.NET MVC

MVC,

V,就是View.视图

M,只应该是ViewModel.视图模型

C,Controller.控制器

我们需要怎么看待并使用这三者。

从你敲入url,我们可以做为入口。

当你敲入url并按了回车。我们的程序会去找到相应的Controller与Action,并在里面进行一系列的逻辑啊,什么的代码的运行。------Controller

然后如果你代码里面运行到了return View(model);

那么这个model,便会传给你的Action相应的页面-------------------------------------------------------------------------------View

首先,我们必须要做的,当然是协调这个model让它适应我们的视图,以呈现正确的,完整的信息。

那么我们接下来要做的,就是实现这个合适的model,并进行赋值,然后传给View让它来呈现给我们信息。

这个合适的model,就是ViewModel--------------------------------------------------------------------------------------ViewModel

个人认为,

至此,MVC的步骤便结束了。

不要把MVC当成一个循环。

很多时候很多人喜欢把MVC写成三角形,认为这三者是相互传递的,

Controller传递model给View,View接受并编辑model再传回给Controller,Controller接受model并直接编辑这个model再传递给下一个View,如此循环。

但是,我们应该认识到,无论做什么项目,存在数据库的数据才是真实的,写在内存里的数据,传来传去,说不定哪里就传错了。

当我们从后台Controller传给了视图View以后,我们就应该切断ViewModel与数据库的联系,要弱化View到Controller的关系。

即使在编辑完信息然后页面POST回来了一个完整的ViewModel,

我们也应该是对ViewModel进行接收,编辑,然后新建model,从数据库拿到最新的信息,赋值到新建的model,然后再传给下一个想要的页面。

这样才能保证,我们程序显示的数据,每次都是来自数据库的,是正确的。

上一篇:java获取获得Timestamp类型的当前系统时间。以及java.util.date 、java.sql.Date之间的转换


下一篇:人工神经网络,支持任意数量隐藏层,多层隐藏层,python代码分享