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这个框架做了一个代码生成器,功能强大.分为两大功能点,一个是数据层,一个是视图层. 数据服务层:通过它,可以实现表设计.领域层初始 ...
随机推荐
- 试水MongoDB
1)安装好后启动mongodb 服务 1_1) 建立data/db ,保证至少有3g大小的盘 1_2) 建立log 文件夹 1_3)配置文件 内容,指定数据存放位置.日志文件位置 dbpath ...
- java实现——009Fibonacci数列
1.循环 public class T009 { public static void main(String[] args){ System.out.println(fibonacci(3)); } ...
- Nodejs之使用session
nodejs中使用session的说明. session介绍 为什么使用session: session运行在服务器端,当客户端第一次访问服务器时,可以将客户的登陆信息保存. 当客户访问其他界面时,可 ...
- Struts2---Result(传统Web应用程序与Ajax应用程序的异同)
看了很久的struts,在视频和书的引导下,慢慢明白了点,推荐:<struts 2 in action>和马士兵的视频 今天看结果这块时,由于还没有学过ajax等,不太明白,但是必须弄懂嗒 ...
- windows系统下安装Scala
一.下载.msi文件 直接下一步安装 二.配置环境变量 1.环境变量 -->> 用户变量 -->> 新建 SCALA_HOME: D:\Program Files\scala ...
- java系列--HTTP协议
一.HTTP请求信息 请求行 请求头 空行 消息体 1.防盗链: 枚举类型: 二.中文乱码问题 1.Get提交 String username = request.getParameter(" ...
- Chrome 出现adobe flash is out of date的解决方法
最近使用安装了ubuntu和linux mint,都发现firefox的flash虽然能用,但还是觉得有点小问题,想使用google chrome,但无奈,一安装使用后就发现flash不能用,显示ad ...
- ubuntu修改环境变量
1.修改/etc/profile后重启之后就失效了,需要修改/etc/environment才可以 以下情况是失败的: 在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文 ...
- Servlet进阶API
对于每个Servlet的设置信息,web容器会为其生成一个ServletConfig作为代表对象,可以从该对象取得Servlet初始参数,以及代表整个web应用程序的ServletContext对象. ...
- JS前端的分享功能
给网页加上分享代码,借助网友的力量推广网站,目前已经很流行了 以下是网页代码 QQ空间分享代码如下: <a href="javascript:void(0);" onclic ...