Asp.Net Core MVC设计模式
2017-08-28 20:20
267 查看
MVC(模型 - 视图 - 控制器)设计模式是一个实际上已经存在了几十年的设计模式,它被用于许多不同的技术上,从Smalltalk到C ++到Java,现在在C#和.NET,在构建用户界面时被作为一种设计模式使用。
MVC设计模式是用于用户接口层的流行的设计模式。
在更大的应用程序中,通常将模型 - 视图 - 控制器UI层与应用程序中的其他设计模式(如数据访问模式和消息模式)组合。
这些都将一起去构建完整的应用程序堆栈。
MVC 的应用程序分成以下三个部分 −
模型 - 描述您正在使用的数据与业务逻辑的一组类。
视图 - 定义应用程序将如何显示的UI。 它是一个纯HTML,它决定了UI的外观。
控制器 - 处理来自用户的请求,应用程序的总体流量和特定于应用程序的逻辑的一组类。
让我们现在了解MVC背后的想法。
这个想法是,您将有一个称为视图的组件,它完全负责呈现此用户界面,无论它应该是HTML还是它实际上应该是桌面应用程序上的UI窗口部件。
视图与模型对话,该模型包含视图需要显示的所有数据。
在Web应用程序中,视图可能没有任何与其相关联的代码。
它可能只有HTML,然后有一些表达式,从模型中获取数据片段,并将它们插入到您在视图中构建的HTML模板对应的位置中。
控制器负责将一切组织起来。 当针对MVC应用程序的HTTP请求到达时,请求被路由到控制器,然后由控制器与数据库,文件系统或模型通信。
在MVC中,控制器接收到一个HTTP请求,控制器必须找出如何组合信息来响应这个请求。 比如用户正在将浏览器定向到应用程序的/books URL,那么控制器需要将信息放在一起以显示书籍列表。 在这种情况下,控制器将构建一个模型。
该模型不知道任何关于HTTP请求或控制器的信息。
该模型仅负责保存用户想要查看的书籍信息,以及与该书籍列表相关联的任何逻辑。
该模型只是一个可以使用的C#类,如果你有一个复杂的模型,你可能需要有多个这种类。
一旦模型放在一起之后,控制器就可以选择一个视图来渲染模型。
视图将获取模型中的信息,如所有图书和每个图书标题等,并且它将使用该信息来构造HTML页面。
然后,在HTTP响应中将该HTML发送回客户端,并完成整个HTTP请求和响应事务。
这些是MVC设计模式的基础,这种模式背后的想法是保持关注的分离。 因此,控制器只负责接收请求和构建模型。 它是将我们需要的逻辑和数据携带到视图中的模型。 然后视图只负责将该模型转换为HTML。
版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: Asp.Net Core MVC设计模式
本文地址:http://www.yuanjiaocheng.net/ASPNET-CORE/mvc-design-pattern.html
MVC设计模式是用于用户接口层的流行的设计模式。
在更大的应用程序中,通常将模型 - 视图 - 控制器UI层与应用程序中的其他设计模式(如数据访问模式和消息模式)组合。
这些都将一起去构建完整的应用程序堆栈。
MVC 的应用程序分成以下三个部分 −
模型 - 描述您正在使用的数据与业务逻辑的一组类。
视图 - 定义应用程序将如何显示的UI。 它是一个纯HTML,它决定了UI的外观。
控制器 - 处理来自用户的请求,应用程序的总体流量和特定于应用程序的逻辑的一组类。
MVC基础
让我们现在了解MVC背后的想法。这个想法是,您将有一个称为视图的组件,它完全负责呈现此用户界面,无论它应该是HTML还是它实际上应该是桌面应用程序上的UI窗口部件。
视图与模型对话,该模型包含视图需要显示的所有数据。
在Web应用程序中,视图可能没有任何与其相关联的代码。
它可能只有HTML,然后有一些表达式,从模型中获取数据片段,并将它们插入到您在视图中构建的HTML模板对应的位置中。
控制器负责将一切组织起来。 当针对MVC应用程序的HTTP请求到达时,请求被路由到控制器,然后由控制器与数据库,文件系统或模型通信。
在MVC中,控制器接收到一个HTTP请求,控制器必须找出如何组合信息来响应这个请求。 比如用户正在将浏览器定向到应用程序的/books URL,那么控制器需要将信息放在一起以显示书籍列表。 在这种情况下,控制器将构建一个模型。
该模型不知道任何关于HTTP请求或控制器的信息。
该模型仅负责保存用户想要查看的书籍信息,以及与该书籍列表相关联的任何逻辑。
该模型只是一个可以使用的C#类,如果你有一个复杂的模型,你可能需要有多个这种类。
一旦模型放在一起之后,控制器就可以选择一个视图来渲染模型。
视图将获取模型中的信息,如所有图书和每个图书标题等,并且它将使用该信息来构造HTML页面。
然后,在HTTP响应中将该HTML发送回客户端,并完成整个HTTP请求和响应事务。
这些是MVC设计模式的基础,这种模式背后的想法是保持关注的分离。 因此,控制器只负责接收请求和构建模型。 它是将我们需要的逻辑和数据携带到视图中的模型。 然后视图只负责将该模型转换为HTML。
版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: Asp.Net Core MVC设计模式
本文地址:http://www.yuanjiaocheng.net/ASPNET-CORE/mvc-design-pattern.html
相关文章推荐
- 项目开发中的一些注意事项以及技巧总结 基于Repository模式设计项目架构—你可以参考的项目架构设计 Asp.Net Core中使用RSA加密 EF Core中的多对多映射如何实现? asp.net core下的如何给网站做安全设置 获取服务端https证书 Js异常捕获
- MVC学习系列-WebForm与asp.net MVC两种设计模式区别、MVC设计模式基础了解
- [翻译-ASP.NET MVC]Contact Manager开发之旅迭代4 - 利用设计模式松散耦合
- [翻译-ASP.NET MVC]Contact Manager开发之旅迭代4 - 利用设计模式松散耦合
- ASP.NET MVC - 使用Post, Redirect, Get (PRG)模式
- ASP.NET MVC Controller激活系统详解:总体设计
- 创建ASP.NET Core MVC应用程序(2)-利用MySQL Connector NET连接到MySQL
- asp.net mvc(模式)和三层架构(BLL、DAL、Model)的联系与区别
- ASP.NET Core 2.0 MVC 发布部署--------- IIS 具体操作
- 在ASP.NET Core MVC中构建简单 Web Api
- ASP.NET MVC——CodeFirst开发模式
- 一步一步Asp.Net MVC系列_权限管理设计起始篇
- ASP.NET Core的配置(5):配置的同步[设计篇]
- ASP.NET 设计模式 - 读书笔记
- asp.net core轻松入门之MVC中Options读取配置文件
- Asp.net Core MVC在Ubuntu部署,并且使用nginx反向代理
- Visual Studio 2015/2017 与ASP.NET CORE 联合创建具有SPA模式的Angular2模板
- ASP.NET MVC 路由配置 管线模式伪静态
- NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式
- ASP.NET Core MVC I\/O编程模型