MVC概述

MVC三种角色

– Model:   用于存储数据的组件(与领域模型概念不同)。

– View:    根据Model数据进行内容展示的组件

– Controller:接受并处理用户指令(操作Model),选择一个View并输出内容。

MVC概述:两种分离

• View和数据(Model)分离

–能够为相同的Model开发不同的View进行展示

–分离可视与不可视得组件,能够对Model进行独立测试(只有View到Model的单向引用)

• View和表现逻辑(Controller)分离

–分离逻辑与具体展示,能够对逻辑进行独立测试(只有Controller到View的单向引用)

MVC与三层架构

• MVC与三层架构类似?

– View – UI Layer

– Controller – BL Layer

– Model – DA Layer

• 其实不然

– MVC是表现模式(Presentation Pattern)

–三层架构是架构模式(Architecture Pattern)

–    没有太多可比性

MVC之间无依赖关系,MVC之间是协作关系,没有层次的关系。MVC不是分层。

WebForms vs ASP.NET MVC

• WebForms的优点

– 将Web开发抽象成一个组件模型

– 使用方便,入门容易

–使控件产业大大加强

• WebForms的缺点

–封装太强——这还是Web开发吗?

– 入门容易,用好难

– 不易进行单元测试,前后台不易配合

• 不过WebForms也在成长

ASP.NET MVC的优势

• 直接,Web开发就是Web开发

• 易于对界面逻辑进行单元测试

– Design for testability

• 易于后台与前台开发人员的配合

ASP.NET MVC是在ASP.NET平台下开发Web应用程序的另一选择,并非为了取代WebForms

 

ASP.NET MVC的特点

• 一切都是可替换的

– ViewEngine

– Action Filter

• 一切都是可测试的

• 公开源代码

– 可以修改

–不可重新发布

Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcApplication1.Controllers
{
    //这是一个规则,表示如果抛出异常将由规定页面处理
    [HandleError]

    /**////
    /// HomeController对应Views中的Home文件夹
    /// 
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            ViewData["Message"] = "Welcome to ASP.NET MVC!";


            // .return View();表示要展现一个aspx页面。
            //默认情况下显示同名aspx页面:Views/Home/Index.aspx
            //当然你也可以自己指定,例如return View("index1")
            //就是显示Views/Home/Index1.aspx
            return View();
        }

        public ActionResult About()
        {
            return View();
        }
    }
}
return View();表示要展现一个aspx 默认情况下显示同名aspx页面:Views/Home/Index.aspx
当然你也可以自己指定,例如return  View("index1")就是显示Views/Home/Index1.aspx

转载于:https://www.cnblogs.com/dupeng0811/archive/2009/06/04/1495958.html

MVC学习笔记1 MVC概述相关推荐

  1. Spring MVC 学习笔记 对locale和theme的支持

    Spring MVC 学习笔记 对locale和theme的支持 Locale Spring MVC缺省使用AcceptHeaderLocaleResolver来根据request header中的 ...

  2. .NET MVC 学习笔记(一)— 新建MVC工程

    一..NET MVC 学习笔记(一)-- 新建MVC工程 接触MVC有段时间了,一直想找机会整理一下,可是限于文笔太差,所以一直迟迟羞于下手,想到最近做过的MVC项目也有一些了,花点时间整理一下方便以 ...

  3. Spring MVC 学习笔记一 HelloWorld

    Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...

  4. 用ajax做级联操作,学习笔记之MVC级联及Ajax操作

    由于刚转型到MVC,MVC的架构模式很多不是很清楚,比如今天就想做个级联的操作,因为之前的ASP.NET的方式是通过:控件-->添加事件-->后台编写级联事件进行触发,但是这个MVC就不同 ...

  5. 从零写一个具有IOC-AOP-MVC功能的框架---学习笔记---11. MVC功能之http请求处理器的编写---简易框架最后一公里!

    从零写一个具有IOC-AOP-MVC功能的框架-学习笔记 专栏往期文章链接: IOC功能相关章节: 从零写一个具有IOC-AOP-MVC功能的框架-学习笔记-01.项目初始化 从零写一个具有IOC-A ...

  6. RN学习笔记01:概述、特点与环境搭建

    RN学习笔记01:概述.特点与环境搭建 一.RN概述 React Native(简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 Reac ...

  7. IOS学习笔记03---C语言概述

    IOS学习笔记03---C语言概述 0 3.C语言1-C语言概述         qq交流群:创梦技术交流群:251572072                        创梦网络赚钱群:2483 ...

  8. MVC学习一:MVC简单流程

    MVC学习一:MVC初次接触 1.MVC简单流程 1.1.服务器接收客户端请求后,解析URL(根据 路由表里配置的URL来分析 类名(控制器名)和方法名)根据请求的类名,创建对应的控制器类对象,并调用 ...

  9. 知识图谱·概念与技术--第1章学习笔记--知识图谱概述--知识图谱的概念,与传统语义网络的区别

    知识图谱·概念与技术--第1章学习笔记--知识图谱概述--知识图谱的概念,与传统语义网络的区别 知识图谱的概念,与传统语义网络的区别 狭义概念 作为语义网络的内涵 与传统语义网络的区别 优点 缺点 与 ...

最新文章

  1. AI视频行为分析系统项目复盘——技术篇2:视频流GPU硬解码
  2. 为帐户创建一个Apex触发器,以根据自定义字段将送货地址邮政编码与账单地址邮政编码匹配
  3. linux中创建目录树,如何在C/Linux中创建目录树?
  4. java各个版本的特性_Java各个版本的新特性
  5. c++如何编写线程安全的DLL
  6. 渗透测试攻击(一)Arp中间人攻击 伪装网关 截获 上网信息用户名密码
  7. 关于 WCF Binding 中 OpenTimeout, CloseTimeout, SendTimeout, ReceiveTimeout 的解释
  8. 无线通信与编码_Rake接收机_三种合并算法_MATLAB仿真代码
  9. Open vSwitch: Provider 网络
  10. PCB生产工艺流程博大精深
  11. 计算机网络网线制作工具有,网线制作工具 网线水晶头制作过程详解(视频+图文教程)...
  12. Star Way To Heaven 二分 + 并查集 + Prime
  13. 追踪算法MUSTer体验
  14. java entries_Java ZipFile entries()用法及代码示例
  15. java 自幂数_java计算自幂数和水仙花数
  16. Winsock 的初始化
  17. 是否有 API 可供云对接?
  18. html列表太多转为下滑菜单,利用CSS过渡属性Transition制作缓缓弹出的纯CSS下拉菜单...
  19. Android SDK安装及配置模拟器
  20. 上证50成分股聚类可视化

热门文章

  1. foreach语句的的解析
  2. 【转】解析.Net框架下的XML编程技术
  3. 让vs2008支持jQuery的智能提示!
  4. VS2012 颜色配置成黑色
  5. 求1+2+3+...+n
  6. opencv连续读图
  7. 互补输出级采用共集形式是为了使_天津大学胡文平《先进材料》:溶液法制备厘米级高度取向有机晶体阵列,可用于高性能有机场效应晶体管...
  8. VS2010发布、打包安装程序超全超详细
  9. 为什么配置了vsftpd.conf文件,用户还是可以访问上级目录?
  10. endnote能自动翻译吗_自动挡和手自一体有啥区别?从外表能看出一辆车是哪种变速箱吗?...