Model和ViewModel

小编最近做了一个底层使用EF映射的项目,里面用到了MVC的Model和自定义的ViewModel。

Model

这里MVC中的Model是根据数据库生成的。

使用的时候,直接添加Model层的引用,使用对应的实体即可。

ViewModel

这里的ViewModel都是根据自己的功能需求自定义的实体类,里面包含了类的属性。

使用的时候,实例化为具体的对象即可,这里的ViewModel就是三层中的实体层,实质上就是用来传数据的。
当你需要查询某张表的某些字段的时候,直接把该字段的字段名添加到ViewModel自己封装的类中即可,需要哪些字段添加哪些属性,有点类似于数据库中视图的意思,但是,这里不是视图,仅仅是用来传递参数的。

同样,先添加命名空间的引用,然后直接使用即可。
有时候数据库设计的不合理,在多张表中,同一个字段的字段名可能不同,这就需要在自定义的类中添加多个属性,这里的属性名,其实也是传递到前台返回json串中的key值,根据key值可以获取对应的value值。

Model和ViewModel相关推荐

  1. Model和ViewModel之间的通用MVVM数据交换

    目录 介绍 代码 示例用法 介绍 我一直在开发一个工具来帮助团队中的其他开发人员为他们的MVC应用程序创建菜单项.所讨论的工具是一个使用MVVM模式的WPF桌面应用程序.我正在编写模型和相关的视图模型 ...

  2. Knockout中ViewModel与Model的互转

    在我们平常的开发当中使用频率最多的就是CRUD(添加.更新.删除.查询). 而"添加"和"编辑"操作又是整个数据源的入口,在整个CRUD中占有非常重要的地位.常 ...

  3. MVC 中的 ViewModel

    此文章总结自:http://rachelappel.com/use-viewmodels-to-manage-data-amp-organize-code-in-asp.net-mvc-applica ...

  4. Cesium 中两种添加 model 方法的区别

    概述 Cesium 中包含两种添加 model 的方法,分别为: 通过 viewer.entities.add() 函数添加 通过 viewer.scene.primitives.add() 函数添加 ...

  5. EO、DTO、ViewModel的区别

    EO(Entity Object,实体对象)就是EF中的实体类,对EO的操作会对数据库产生影响.EO不应该传递到其他层. DTO(Data Transfer Object,数据传输对象),用于在各个层 ...

  6. EO DTO ViewModel的区别

    EO(Entity Object,实体对象)就是EF中的实体类,对EO的操作会对数据库产生影响.EO不应该传递到其他层. DTO(Data Transfer Object,数据传输对象),用于在各个层 ...

  7. vue 怎么全局到入常量_午后躺椅上看关于Vue的20点

    1.var,const,let的区别 首先,必须明确let 与const是ES6 中为了修复var的缺陷引入的,那么var有什么缺陷呢? var 1.var没有块级作用域 在JS函数中的var声明,其 ...

  8. MVC、MVP、MVVM

    MVC.MVP.MVVM这些模式是为了解决开发过程中的实际问题而提出来的,目前作为主流的几种架构模式而被广泛使用. 一.MVC(Model-View-Controller) MVC是比较直观的架构模式 ...

  9. 快过年了,为过完年跳槽的人准备一份面试题

    设计模式是什么? 你知道哪些设计模式,并简要叙述? 设计模式是一种编码经验,就是用比较成熟的逻辑去处理某一种类型的事情. 1). MVC模式:Model View Control,把模型 视图 控制器 ...

最新文章

  1. 华为nova5iotg功能使用_如果你的手机存在NFC功能,一定要尝试一下这些操作,体验超级棒...
  2. 谷歌将采取自动化系统审核,预计被误删视频数量或将大增
  3. python通过requirements.txt文件批量安装依赖包的实现步骤
  4. html5退出全屏触发的方法_好程序员web前端分享HTML5常见面试题集锦二
  5. python二维插值_python实现二维插值的三维显示
  6. mysql regexp边界_MySQL中REGEXP正则表达式使用大全
  7. 库 v10怎么安装_22000Pa强劲吸力加高续航,追觅V10无线吸尘器体验
  8. 【PID优化】基于matlab遗传算法PID控制器优化设计【含Matlab源码 1144期】
  9. 迅捷pdf在线转换html,迅捷pdf在线转换成word免费版在线版
  10. 网站类项目商业计划书(转)
  11. send()、sendto()和recv()、recvfrom()的使用
  12. 程序员人生:技术人员的职业发展规划
  13. 【计算机网络】笔记2——三种交换方式:电路交换,分组交换,报文交换
  14. 服务器上需要高性能显卡吗,英特尔要做独立显卡 只因服务器市场太重要
  15. Neyman-Pearson 奈曼-皮尔逊决策分析
  16. redis 底层数据结构详解
  17. SQL调优指南笔记9:Joins
  18. [算法课]全面翻新计划!第十二周全解
  19. Lazada打造爆款秘籍
  20. AI 在视频领域运用—弹幕穿人

热门文章

  1. UWP应用程序使用Prism框架构建MVVM
  2. unity3d-知识汇总
  3. oracle更改字段名顺序的方法
  4. 快速查看CSDN用户发贴情况
  5. 为什么我的vc6.0建立工程时显示不能访问类查文件类信息,类查看信息不可用
  6. STM32初识——中断初始化过程(by woody)
  7. 一个回车引发的编译错误
  8. 石墨烯区块链(2)核心功能
  9. EOS (3)系统特点
  10. (chap6 Http首部) 其他首部字段