加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – ASP.NET MVC术语让我沮丧 – 为什么’ViewModel

发布时间:2020-12-16 00:08:38 所属栏目:asp.Net 来源:网络整理
导读:我是一个ASP.NET MVC新手,但之前使用过很多模型 – 视图 – 控制器框架. 我recently came across将您的特定视图需要的数据(实际上,它被分配给ViewData)收集到一个名为(NameOfView)ViewModel的新类的约定. 收集这些数据,使其与View / Controller交互提供的功
我是一个ASP.NET MVC新手,但之前使用过很多模型 – 视图 – 控制器框架.

我recently came across将您的特定视图需要的数据(实际上,它被分配给ViewData)收集到一个名为(NameOfView)ViewModel的新类的约定.

收集这些数据,使其与View / Controller交互提供的功能相关联,这使我成为一个辅助结构,甚至是闭包机制(在’封装一组变量’的意义上).

那么为什么它被称为’ViewModel’,因为它既不是视图也不是模型?

有没有其他人觉得这个名字令人困惑?

编辑:只是将属性放到View上有什么问题,以便Controller可以填充它们(如在其他MVC框架中)?

解决方法

该模型是数据的视图不可知表示.视图模型是数据的视图特定表示:它是可能从给定视点出现的模型.

考虑一个由原始数据点组成的模型;然后,直方图视图可能具有视图模型,该视图模型由一组桶和从该数据中提取的总数组成.

从逻辑上讲,它是模型的子集或转换 – 它可以使用视图特定功能按需生成,并且模型作为其唯一输入.

关于视图与属性包或自定义对象的属性……我确信有人对此有强烈的感受,但我个人并不认为有很大的区别.您正在生成模型的视图特定表示并以某种方式传递它;确切的机制似乎并不那么重要.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读