Asp.net mvc ViewModel

本文介绍了在ASP.NET MVC项目中如何使用ViewModel来增强View的强类型特性,保持Model与ViewModel的独立性。通过创建ViewModels文件夹,定义TeacherViewModel并添加额外属性以实现更复杂的UI需求。强调每个View应对应一个独立的ViewModel,以便更好地管理和适应未来的功能扩展。
摘要由CSDN通过智能技术生成
         MVC规定,View即V是纯UI,不允许包含任何的逻辑层,所以在上节实例中已经违反了MVC基本准则(上节实例也是初学者应该遇到的内容),在上例中违反MVC的体系架构规则如下:
1、显示全名——逻辑层
2、使用红色标识年龄大于50的。使用简单逻辑改变了HTML元素的外观——逻辑层

ViewModel
        面对可能的问题,微软就会提供解决该问题的方法,提出ViewModel,ViewModel是ASP.NET MVC应用中的隐式声明的层,用来维护Model和View之间的数据传递,是View的数据容器。
Model和ViewModel区别
         Model是业务相关数据,是由业务和数据结构构建的模型,而ViewModel 是视图相关的数据,是根据View创建。
 工作原理流:
1、用户提出需求,Controller处理用户的交互逻辑,执行简单的判断。
2、Controller获取一个或者多个Model数据
3、Controller决策使用哪个View最符合用户请求
4、Controller将根据Model数据和View需求创建并初始化ViewModel对象
5、Controller将ViewModel数据以ViewData或者ViewBag或者强类型的View等对象传递到View中,并返回View。
ViewModel分别与View,Model关联方式:

View将变成ViewModel的强类型的View,Model却和ViewMo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值