首页 > 编程语言 >无涯教程-ASP.NET MVC - 简介

无涯教程-ASP.NET MVC - 简介

时间:2023-10-12 10:33:02浏览次数:45  
标签:Web ASP 框架 Core 无涯 MVC NET

ASP.NET Core MVC 是 ASP.NET Core 内,提供给 Web 应用程序开发的框架,它可视为 ASP.NET MVC 的后继版本,其主要功能均衍生自 ASP.NET MVC,但它除了基于 ASP.NET Core 外,也将 ASP.NET MVC 与类似平台进行了整合,例如负责 View 的 ASP.NET Web Pages 以及负责 RESTful API 的 ASP.NET Web API,都与 ASP.NET Core MVC 的核心合并,因此在 ASP.NET Core MVC 中将可同时并存 MVC 网页以及 RESTful API。

ASP.NET MVC不是从零开始构建的。它是传统ASP.NET Web窗体的完全替代。它创建在ASP.NET的顶部,因此开发人员在构建MVC应用程序时几乎享受所有ASP.NET功能。

Building MVC Application

历史

ASP.NET 1.0于2002年1月5日发布,它是.Net Framework 1.0版的一部分。当时,很容易将ASP.NET和Web窗体视为一回事。但是,ASP.NET始终支持两层抽象-

  • System.Web.UI   -  Web窗体层,包括服务器控件,ViewState等。

  • System.Web        -  它提供了基本的Web堆栈,包括模块,处理程序,HTTP堆栈等。

到2007年发布ASP.NET MVC时,MVC模式已成为构建Web框架的最流行方法之一。

2009年4月,根据Microsoft公共许可证(MS-PL)发布了ASP.NET MVC源代码。 " ASP.NET MVC框架是一个轻量级,可高度测试的演示框架,与现有的ASP.NET功能集成在一起。

其中一些集成功能是母版页和基于成员身份的身份验证。 MVC框架在System.Web.Mvc程序集中定义。

2012年3月,微软根据开放源代码许可(Apache许可2.0)发布了一部分网络堆栈(包括ASP.NET MVC,Razor和Web API),该计划未包括ASP.NET Web窗体。

ASP.NET MVC

Microsoft决定创建自己的MVC框架来构建Web应用程序,MVC框架只是创建在ASP.NET之上,当您使用ASP.NET MVC构建Web应用程序时,不会有任何状态的幻想,不会有页面加载和页面生命周期之类的问题。

MVC框架中有一个化控制器的组件,您可能不喜欢MVC框架化控制器的方式,您可能想自己处理该作业,因此,在MVC中有很多地方可以插入自己的自定义逻辑来处理任务。

使用"Model-View-Controller"设计模式的整个思路是,您要保持关注点的分离,您的控制器不再受与ASP.NET运行时的联系或与ASPX页面的联系的困扰,这很难测试。现在,您只有一个带有常规方法的类,可以在单元测试中调用该类,以找出该控制器是否将正常运行。

优点

以下是使用ASP.NET MVC的好处-

  • 通过将应用程序分为模型,视图和控制器,可以更轻松地管理复杂性。

  • 启用对呈现的HTML的完全控制并提供关注点的清晰分离。

  • 对HTML的直接控制还意味着可以更好地实现对不断发展的Web标准的遵从性。

  • 便于向现有应用添加更多的交互性和响应性。

  • 为测试驱动的开发(TDD)提供更好的支持。

  • 对于由大型开发人员团队支持的Web应用程序以及需要高度控制应用程序行为的Web设计人员而言,效果很好。

参考链接

https://www.learnfk.com/asp.net_mvc/asp.net-mvc-overview.html

标签:Web,ASP,框架,Core,无涯,MVC,NET
From: https://blog.51cto.com/u_14033984/7823482

相关文章

  • 无涯教程-ASP.NET Core - Razor表单
    在本章中,无涯教程将继续讨论标签助手,还将在应用程序中添加新功能,并使其能够编辑现有员工的详细信息,将在每个员工添加一个链接,该链接将转到HomeController上的Edit动作。@modelHomePageViewModel@{ViewBag.Title="Home";}<h1>Welcome!</h1><table>@forea......
  • spring-mvc 请求流程学习
    参考:01、基础入门-SpringBoot2课程介绍_哔哩哔哩_bilibili请求进入HttpServlet的doGet方法然后通过实现类org.springframework.web.servlet.FrameworkServlet#doGet()调用org.springframework.web.servlet.FrameworkServlet#processRequest----》org.springframework.web.ser......
  • 无涯教程-ASP.NET Core - Razor导入
    在本章中,无涯教程将讨论RazorViewImport,除了ViewStart文件之外,还有一个ViewImports文件,MVC框架在呈现任何视图时都将查找该文件。就像ViewStart文件一样,可以将ViewImports.cshtml放到文件夹中,并且ViewImports文件可以影响文件夹层次结构中的所有视图。此视图是此版本MVC的......
  • 无涯教程-ASP.NET Core - Razor视图
    在本章中,无涯教程将讨论RazorViewStart。MVC中的Razor视图引擎有一个约定,即它将查找名称为_ViewStart.cshtml的任何文件,并在该文件中执行代码。ViewStart文件中的代码无法呈现到页面的HTML输出中,但可用于从各个视图内的代码块中删除重复的代码。在示例中,如果希望每个视图......
  • 无涯教程-ASP.NET Core - Razor布局
    在本章中,无涯教程将了解“RazorLayout”视图,大多数网站和Web应用程序都希望创建呈现一些常见元素的页面。布局视图现在了解什么是布局视图。"Layout"视图是扩展名为*.cshtml的Razor视图,您可以选择以所需的方式命名布局视图,在本章中,将使用名为_Layout.cshtml。这是"Layou......
  • 无涯教程-ASP.NET Core - 实体框架
    在本章中,无涯教程将设置和配置应用程序以保存和读取SQLServer数据库中的数据。要使用数据库,将使用实体框架,该框架经过了重新编写以与新的.NETFramework一起使用。在此应用程序中,将使用SQLServerLocalDB。LocalDB是为开发人员优化的SQLServer的特殊版本。VisualStudio......
  • springMVC @Test方法中如何请求https
    原文链接:https://www.longkui.site/error/springmvc-test-https/4823/0.背景springMVC环境,需要在@Test方法中发送一个https请求,按照格式要求发送了,结果报错org.springframework.web.client.ResourceAccessException:I/OerroronPOSTrequestfor"https://xxxx/xxx/xx:jav......
  • 无涯教程-ASP.NET Core - 属性路由
    在本章中,无涯教程将学习另一种路由方法,即基于属性的路由,通过基于属性的路由,可以在控制器类和这些类内部的方法上使用C#属性,这些属性具有告诉ASP.NETCore何时调用特定控制器的元数据。它是基于约定的路由的替代方法。按照出现的顺序,注册的顺序对路由进行判断,但是映射多个路由是......
  • WebMvcConfigurer详解
    WebMvcConfigurer是SpringMVC框架中的一个接口,它提供了一些方法来配置SpringMVC的行为。它是一个回调接口,允许开发人员在SpringMVC配置过程中插入自己的逻辑。下面是一些WebMvcConfigurer接口中常用的方法:addViewControllers:用于注册简单的视图控制器。addInterceptors:......
  • 无涯教程-ASP.NET Core - MVC设置
    在本章中,无涯教程将在FirstAppDemo应用程序设置为MVC框架,将在ASP.NETCore(更具体地说,ASP.NETCoreMVC框架)构建一个Web应用程序,从技术上讲,只能使用中间件来构建整个应用程序,但是ASP.NETCoreMVC提供了可轻松创建HTML页面和基于HTTP的API的功能。要在空项目中设置MVC框架,请遵......