zoukankan      html  css  js  c++  java
  • MVC学习笔记1 MVC概述

    MVC概述

    MVC三种角色

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

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

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

    MVC概述:两种分离

    • View和数据(Model)分离

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

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

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

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

    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
     
    return View();表示要展现一个aspx 默认情况下显示同名aspx页面:Views/Home/Index.aspx
    当然你也可以自己指定,例如return  View("index1")就是显示Views/Home/Index1.aspx
     
  • 相关阅读:
    log4net 简单使用教程(配置)
    C#WinForm 国际化的简单实现,多语言实现
    EF Power Tool 参数错误 HRESULT:0x80070057 (E_INVALIDARG)) 解决办法
    如何用委托与事件实现winfrom窗体之间值传递
    VS2010自带的Dotfuscator 5注册
    WinForm 实现主程序(exe)与其关联类库(*.dll)分开存放
    POJ_3211 Washing Clothes (01背包)
    POJ_3624 Charm Bracelet ( 01背包 )
    集训队内部测试赛(2012.01.02)
    HDU_1011 Starship Troopers && HDU_1561 The more, The Better (树型dp)
  • 原文地址:https://www.cnblogs.com/dupeng0811/p/1495958.html
Copyright © 2011-2022 走看看