ASP.NET MVC 学习之路-1
本文在于巩固基础
学习参考书籍:ASP.NET MVC4 Web编程
首先确定我们学习MVC的目标:
我们学习ASP.NET MVC的目的在于开发健壮的、可维护的Web应用,当然这需要一定的知识基础,需要对HTML,CSS,JavaScript以及.net框架还有C#编程语言非常的熟悉
大概了解什么是ASP.NET MVC
ASP.NET MVC他是一种全新的WEB开发框架,构建在.net平台上,ASP.NET MVC能够完全支持那些提倡松耦合,高可维护性的开发模式和实践原则
了解过去是为了更好的面向未来,我们先来看看 Microsoft Web开发平台 的发展历史
- 活动服务页面
Microsoft的第一个web开发平台是ASP,它将脚本和代码都放在一个文件,网站中每个窗体代表一个物理文件,随着时间的推移,开发人员希望改进代码的复用性,更好的分离关注点以及更方便的进行面向对象开发,所有在2002年的时候微软就提供了一个新的Web开发平台,ASP.NET来满足这些需求
2.ASP.NET Web表单
与ASP一样,ASP.NET也提供了基于页面的方式,每个页面都对于一个物理文件,称为web表单(web form),与ASP不同的是,ASP.NET提供了代码分离机制,把代码和HTML标签分离到两个不同的文件中,很多人认为他过于抽象了最底层的东西
3.ASP.NET MVC
ASP.NET MVC 与之前的ASP.NET表单不同,他抛弃了基于页面的架构风格。使用全新的(模型-视图-控制器)架构
MVC模式
MVC模式是一种严格实现应用程序各部分隔离的架构模式,能够带来很多好处,比如开发、测试、以及维护方面
模型:模型代表着核心的业务逻辑和数据。模型封装了域实体的属性和行为,并暴露实体的属性
视图:视图负责转换模型并把它传递给表示层,遵循分离关注点的原则,视图应该关注的是如何展示数据,而不应该包含任何业务逻辑-业务逻辑应该封装在模型中
控制器:控制器控制程序的逻辑,充当视图和模型之间协调的角色,控制器从视图层接收用户输入的信息,然后使用模型来执行特定的操作,并把最终结果回传给视图
ASP.NET MVC 学习之路-1的更多相关文章
- ASP.NET MVC 学习之路-3
本文在于巩固基础 到这里不得不说ASP.NET MVC一个规则:惯例优先原则 ASP.NET会假定开发人员遵循特定的规则来构建自己的程序而不是使用配置文件 ASP.NET MVC文件夹结构也遵循惯例优 ...
- ASP.NET MVC 学习之路-2
本文在于巩固基础 为了方便理解MVC框架,我们先创建空的ASP.NET MVC模板 下面是创建后的项目结构 每个文件或者文件夹的作用 App_Data 应用程序数据--- 顾名思义是放置文件或者数据库 ...
- ASP.NET MVC 学习之路-4
本文在于巩固基础 模型绑定 从URL 获取值 public ActionResult About(int id) { ViewBag.Id = id; return View(); } @{ View ...
- ASP.NET MVC学习之路:模板页
1.MVC开发步骤: 控制器-视图. 2.每一个视图都会有一个默认的模板页:_ViewStart.cshtml. 名字不能改,只能叫_ViewStart. 3.Layout=”~/Views/Shar ...
- ASP.NET MVC 学习之路-5
本文在于巩固基础 数据库开发模式: 1.数据库优先开发模式 2.模型优先开发模式 EntityFramework学习之一 最简单的一个案例 第一步创建模型 public class Student { ...
- ASP.NET MVC 学习之路-6
本文在于巩固基础 上文中使用的Code First创建数据库 本文将使用数据库生成模型 这里使用ADO.NET实体数据模型来生成模型 下面按照指导完成操作 下面看看如何使用这个框架 数据访问修改主要是 ...
- [ASP.NET MVC 小牛之路]04 - 依赖注入(DI)和Ninject
本人博客已转移至:http://www.exblr.com/liam 为什么需要依赖注入 在[ASP.NET MVC 小牛之路]系列的理解MVC模式文章中,我们提到MVC的一个重要特征是关注点分离( ...
- [ASP.NET MVC 大牛之路]01 - 开篇
匆匆2014,转眼就到末尾了.在这一年,你还有哪事情些想做而没有做? 2014年在我身上发生了两件意义重大的事,一是正月初一宝宝出生,我升级成为了爸爸:二是进入了一家创业公司,成为了技术负责人. 去年 ...
- [ASP.NET MVC 大牛之路]02 - C#高级知识点概要(1) - 委托和事件
在ASP.NET MVC 小牛之路系列中,前面用了一篇文章提了一下C#的一些知识点.照此,ASP.NET MVC 大牛之路系列也先给大家普及一下C#.NET中的高级知识点.每个知识点不太会过于详细,但 ...
随机推荐
- PHP实现好友生日邮件提醒
我有一个想法是这样的,希望每天知道今天是我哪位好友的生日? 当然,我得首先保存我所有好友的生日信息 实现:在新浪申请免费服务器,并申请Mysql应用,然后建一张表保存好友的信息 我想,我已经完成第一步 ...
- they're hiring
Gather Health ⋅ Careers Careers at Gather
- vsftpd配置---------------------之chroot_local_user和chroot_list_enable含义
chroot_local_user和chroot_list_enable含义 很多情况下,我们希望限制ftp用户只能在其主目录下(root dir)下活动,不允许他们跳出主目录之外浏览服务器上 的其他 ...
- gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解
摘自http://blog.csdn.net/elfprincexu/article/details/45043971 gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解 C和C+ ...
- Eclipse中更改默认java代码格式【转】
在写代码时常常有2种代码样式习惯,如下图.由于一直习惯了第一种代码格式,而看第二种代码格式时感觉代码很乱,总找不到“{ }”对称的感觉.Eclipse自动格式化代码的快捷方式是Ctrl+Shift+F ...
- think in python 11 字典
字典 字典类似于列表,但更加通用 键值对 ,字典是 键与值之间的映射,每个键都映射到一个值上 dict可以创建一个不包含任何项的字典 eng2sp = dict() print eng2sp 还可以给 ...
- 超级强大的SVG SMIL animation动画详解
本文花费精力惊人,具有先驱前瞻性,转载规则以及申明见文末,当心予以追究.本文地址:http://www.zhangxinxu.com/wordpress/?p=4333 //zxx: 本文的SVG在有 ...
- 解决Qt中QTableWidget类方法setItem 时导致程序崩溃问题
在为一个音乐播放器增加功能时莫明奇妙的出现程序崩溃,定位到是由于QTableWidget 的setItem方法导致的,最终在此处找到了解决方式. 大致是说不能在setItem之前连接cellChang ...
- C++ Primer 读书笔记:第11章 泛型算法
第11章 泛型算法 1.概述 泛型算法依赖于迭代器,而不是依赖容器,需要指定作用的区间,即[开始,结束),表示的区间,如上所示 此外还需要元素是可比的,如果元素本身是不可比的,那么可以自己定义比较函数 ...
- yum mysql
linux下使用yum安装mysql 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | grep mys ...