当前位置: 代码网 > it编程>编程语言>Asp.net > ASP.NET MVC模式简介

ASP.NET MVC模式简介

2024年05月18日 Asp.net 我要评论
一、mvc模式简介mvc模式是一种流行的web应用架构技术,它被命名为模型-视图-控制器(model-view-controller)。在分离应用程序内部的关注点方面,mvc是一种强大而简洁的方式,尤

一、mvc模式简介

mvc模式是一种流行的web应用架构技术,它被命名为模型-视图-控制器(model-view-controller)。在分离应用程序内部的关注点方面,mvc是一种强大而简洁的方式,尤其适合应用在web应用程序中。

mvc将应用程序的用户界面分为三个主要部分:

  • 模型:一组类,描述了要处理的数据以及修改和操作数据的业务规则。
  • 视图:定义应用程序用户界面的显示方式。
  • 控制器:一组类,用于处理来自用户、整个应用程序流以及特定应用程序逻辑的通信。

1、mvc在web框架中的应用

mvc模式经常应用于web程序设计中。在asp.net mvc中,mvc三个主要部分的定义大致如下:

  • 模型:模型是描述程序设计人员感兴趣问题域的一些类,这些类通常封装存储在数据库中的数据,以及操作这些数据和执行特定域业务逻辑的代码。在asp.net mvc中,模型就像使用了某种工具的数据访问层(daa access layer),这种工具包括实体框架(entity framework)或者与包含特定域逻辑的自定义代码组合在一起的其他实体框架。
  • 视图:一个动态生成html页面的模板。
  • 控制器:一个协调视图和模型直接关系的特殊类。它响应用户输入,与模型进行对话,并决定呈现哪个视图(如果有的话)。在asp.net mvc中,这个类文件通常以后缀名controller表示。

2、执行顺序

在asp.net mvc中的执行顺序可以用下图进行表示,如图所示:

其执行顺序可以描述如下:用户在浏览器地址栏里面输入要访问的网址,然后发起请求,控制器接收网页发送的请求,如果需要请求数据,则先从model里面取出数据交给控制器,然后把数据交给视图,视图负责展现数据。如果不需要请求数据,则直接返回视图呈现给用户。

二、asp.net中的mvc

1、asp.net mvc和asp.net

  • asp.net mvc是asp.net技术的子集。
  • asp.net mvc在asp.net核心基础之上构建:

    依赖于httphandler,如请求是如何进入控制器的。

    依赖于session、cookie、cache、application等状态保持机制。

    使用httpcontext、request、response、server等对象。

    在controller使用智能感知很容易得到这些对象。

  • .net中编写web程序的一种可选方式。

2、asp.net mvc和webforms

  • asp.net mvc和webform都是.net中开发web程序的一种方式,两者是一种并列的关系。
  • webform的特点:

    所见即所得,开发傻瓜式:服务器端控件、事件模型、状态管理。

    借鉴了winform的成功特色。

    偏离了web请求处理的原理(请求->处理->响应)。

  • asp.net mvc的特点:关注分离:

    webform只是把一个页面分成了前置页面和后置代码,分离的不够彻底。

    mvc可以把一个页面分成controller、view、model三部分,分离的更彻底。

    测试性强。可以针对controller、view、model单独进行测试。

    更加接近web请求处理的本质。

三、创建asp.net mvc

下面使用visual studio2019创建一个asp.net mvc项目,其他版本的visual studio创建asp.net mvc步骤一致。

1、选择文件->新建->项目

如下图所示:

2、选择.net framework版本的asp.net mvc

如下图所示:

然后点击“下一步”按钮。

3、配置项目名称和路径

最后点击“创建”按钮,然后会弹出创建新的asp.net web应用程序对话框,该对话框列出了所有asp.net应用程序共有的一些选项,如下图所示:

  • 选择模板。
  • 添加框架特定的文件夹和核心引用。
  • 添加单元测试。
  • 配置身份验证。
  • 添加docker支持。

选择模板和添加文件夹和核心引用共同起作用。模板选择了一个起点,然后使用框架复选框来添加对webforms、mvc和web api的支持。这意味着我们可以选择一个mvc模板,然后添加web forms支持,或者可以选择空模板,添加对任意框架的支持。这种功能不只在创建新项目时可以使用:任何时候都可以添加对任意框架的支持,因为框架文件夹和核心引用是通过nuget包添加的。

3.1、选择一种应用程序模板

下面对这些模板进行介绍:

  • 空(empty):可以想见,空模板会建立一个空的项目骨架。得到的文件包括一个web.config(包含一些默认的网站配置设置)和创建项目所需的几个程序集引用,但是仅此而已。这个模板不会提供代码,不包含javascript或css脚本文件,甚至不会提供一个静态的html文件。
  • web forms:web forms模板为asp.net web forms开发打下基础。
  • mvc:mvc模板设置一个标准的、带几个视图的homecontroller,配置站点布局,并包含一个mvc特定的html页面。
  • web api:使用此模板创建的应用程序同时支持mvc和web api。包含mvc支持,部分是为了显示api help页面,它们记录了公有api签名。
  • 单页应用程序(single page application):单页应用程序模板创建的应用程序主要通过javascript请求web api服务驱动,而不是采用传统的web页面请求/响应周期。

3.2、测试

所有的内置项目模板都有一个选项,用来使用样本单元测试创建单元测试项目。

推荐选中“创建一个单元测试项目”复选框

3.3、配置身份验证

单击“更改”按钮,可以打开更改身份验证对话框,从中可以选择身份验证方法,如下图所示:

对话框中列出了4个选项:

  • 不进行身份验证:用于不需要身份验证的应用程序,例如没有管理单元的公共网站。
  • 个人用户账户:用于在本地存储用户配置文件(如在sql server数据库中存储)的应用程序。支持用户名/密码账号,以及社交认证提供程序。
  • 工作或学校账户:用于通过某种形式的活动目录(包括azure active directory和office365)进行身份验证的账户。
  • windows身份验证:用于内部网应用程序。

最后点击“创建”按钮,完成asp.net mvc应用程序的创建:

到此这篇关于asp.net mvc模式的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com