2017年2月16日-----------乱码新手自学.net 之MVC模型
第二篇博文,最近学习的内容还是回到了正题:ASP.NET MVC5之上。虽然EF学了个一知半解,但是用这点知识,看MVC5的MODEL部分应该还是够了。尽管周末还要恶补一下EF才行。
(一)MVC简述:
MVC,不外乎视图、控制器、模型。
我想,自学MVC的朋友肯定都已经接触过三层架构。
尽管三层架构和MVC没有两毛钱关系,但是这种分层理念其实是共性的。
我们不用去套MVC和三层架构的关系,
只需要去理解:模型就是取得数据并将数据作为载体传递给视图的部分。
视图可以粗放得理解为HTML,反正就是展示给用户的那部分。
控制器就是调度模型和视图的部分。
硬是要把三层和MVC扯上关系,那么我觉得,模型部分就是三层架构中的BLL+DAL+MODEL的整合。
总之他们都是要提供一个数据展示给展示给用户的部分、他们都是要从UI里接受数据并加工。
(二)模型部分
上面说到,模型部分的作用就是为了给视图数据。那么模型部分的实现方式就很多了,可以用原生ado.net 像三层架构一样构建BLL和DAL,也可以用EF,甚至可以用其他ORM框架。总之,要能处理数据,处理数据,处理数据!!!
原生ADO.NET就不说了,记录一下如何使用VS快速搭建一个简单框架的步骤。
(1)首先根据实际设计,搭建模型类,这个模型类是数据实体。关键词(实体模型类)
(2)在VS中,利用搭建基架的方式,根据我们设计的模型类和EF(entity framework)自动生成控制器、数据上下文(DbContext)、视图。关键词(使用VS的基架功能)如果不懂只有百度一下具体操作,这里就不详解了。
(3)搭建好基架之后,选择数据库初始化策略。
经历以上三个步骤,VS可以快速给我们搭建一个简单的框架,实现最基本的增、删、改、查的简单网站。大幅减少代码量,对于一些简单功能的项目来说简直是绝了。VS不愧是地球上最屌的IDE……
参考:ASP.NETV MVC5 高级编程 第四章 模型
2017年2月16日-----------乱码新手自学.net 之MVC模型的更多相关文章
- 2017年2月22日-----------乱码新手自学.net 之Entity Framework 增删改
由于我是自学的,没有人教,在网上查资料也查不到个所以然.问大神们也是爱理不理的. 所以这篇随笔纯粹源自于我自己的认识.是否真正正确我也没有把握. 如果有什么错误,请大神们给予指正 ========== ...
- 2017年3月14日-----------乱码新手自学.net 之Authorize特性与Forms身份验证(登陆验证、授权小实例)
有段时间没写博客了,最近工作比较忙,能敲代码的时间也不多. 我一直有一个想法,想给单位免费做点小软件,一切思路都想好了,但是卡在一个非常基础的问题上:登陆与授权. 为此,我看了很多关于微软提供的Ide ...
- 2017年2月28日-----------乱码新手自学.net 之特性与验证
现在看asp.net MVC5自学已经到了第六章:数据注解与验证. 话得从以前看MVC music store(音乐商店项目)的源码说起, 最初看music store源码完全就是一脸懵逼,整个程序, ...
- 2017年4月16日 一周AnswerOpenCV佳作赏析
2017年4月16日 一周AnswerOpenCV佳作赏析 1.HelloHow to smooth edge of text in binary image, based on threshold. ...
- 2017年2月16日 分析下为什么spring 整合mybatis后为啥用不上session缓存
因为一直用spring整合了mybatis,所以很少用到mybatis的session缓存. 习惯是本地缓存自己用map写或者引入第三方的本地缓存框架ehcache,Guava 所以提出来纠结下 实验 ...
- 2017年12月16日 ASP.NET基本用法
ASP.NET初级添加 利用css代码跟ASP.NET还有Javascript原生,LinQ来写增跟展示数据 首先介绍一个非常好用的控件,灵活并且循环展示数据库里面的数据 <asp:Repeat ...
- outlook 通讯录分类--2017年1月16日--对联系人分类管理
outlook功能多,复杂,导致打开界面就晕,通讯录分类 问:在Outlook 中,随着联系人数量的增多,亲朋好友.同事.客户的信息混杂在一起,每次发邮件都要用很长时间才能从联系人列表中找到需要的人. ...
- [转载]Ubuntu17.04(Zesty Zapus)路线图发布:2017年4月13日发布
Canonical今天公布了Ubuntu 17.04(Zesty Zapus)操作系统的发布路线图,该版本于今年10月24日上线启动,toolchain已经上传且首个daily ISO镜像已经生成.面 ...
- 【2017年9月10日更新】ABP配套代码生成器(ABP Code Generator)帮助文档,实现快速开发
ABP代码生成器介绍 ABP Code Generator 针对abp这个框架做了一个代码生成器,功能强大.分为两大功能点,一个是数据层,一个是视图层. 数据服务层:通过它,可以实现表设计.领域层初始 ...
随机推荐
- Myeclipseforspring 10破解
破解包和说明下载网址:http://ishare.iask.sina.com.cn/f/33848276.html?all=y
- Nodejs之模板ejs
ejs使用说明及介绍. 1.创建ejs项目 express -e test //创建模板为ejs的项目,默认为jade. 2.使用 app.js中添加 var ejs = require('ejs' ...
- UILable添加事件
原文:http://blog.sina.com.cn/s/blog_9e8867eb0101dk6t.html 先需要声明的是:UILabel或UIImageView的 userInteraction ...
- volatile的理解和使用
package thread; /** * Created by Administrator on 2017/1/15. */ public class Counter { public volati ...
- HNU 13074 Goldbach’s Conjecture 解题报告
题目大意:输入一个偶数(x<32000),输出这个偶数是由哪两个素数相加所得. 比如:一个偶数26,它可以是3+23,7+19,13+13,这些素数相加所得. 输入输出样例: Sample In ...
- 1.4.2.2. PATHS(Core Data 应用程序实践指南)
持久化存储文件在文件系统中的位置 先获取应用程序文档目录的路径 #pragma mark - PATHS - (NSString *)applicationDocumentsDirectory { ) ...
- 404 error on preview ... "buffer_id(29) is not valid (closed or unsupported file format)"
利用sublime text2的插件OmniMarkupPreview进行md文件预览时,出现如下错误 "Error: 404 Not Found Sorry, the requested ...
- js原生设计模式——4安全的工厂方法模式之oop编程增强版
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- #图# #dijkstra# ----- OpenJudge 726:ROADS
OpenJudge 726:ROADS 总时间限制: 1000ms内存限制: 65536kB 描述 N cities named with numbers 1 ... N are connected ...
- jQuery删除DOM节点
jQuery删除DOM节点 <%@ page language="java" import="java.util.*" pageEncoding=&quo ...