ASP.NET Web应用中的 Razor Pages/MVC/Web API/Blazor

2024-07-08 1873阅读

        如果希望使用ASP.NET Core创建新的 Web 应用程序,应该选择哪种方法?Razor Pages还是 MVC(模型-视图-控制器),又或者使用Web API + Vue/React/......

        每种方法都有各自的优点和缺点。

什么是 MVC?

        大多数服务器端语言都采用广泛使用的模型-视图-控制设计。它由三个主要组件组成:控制器、模型和视图。控制器负责输入并与模型和视图交互。视图负责用户界面,模型代表业务逻辑和数据。虽然 MVC 模型适用于 API 开发,但 Razor Pages 专注于页面而不是 API。如果您打算使用 Angular 或 React 等前端框架,那么 MVC 将是一个合适的选择。

什么是 Razor Pages?

        Razor Pages 是允许轻松加载数据的网页,类似于 HTML 页面。它们与 ASP.NET MVC 的视图组件非常相似,具有相同的语法和功能。 Razor Pages 和 MVC 之间的主要区别在于,使用 Razor Pages,模型和控制器代码包含在页面本身中。这样就无需单独添加代码。Razor Pages 类似于MVVM 框架(模型-视图-视图-模型),提供双向数据绑定和具有隔离关注点的简化开发体验。 ASP.NET MVC在 Web 应用程序开发中越来越受欢迎,具有众多优势。事实上,ASP.NET Web Forms 是作为 MVC 中的 MVVM 解决方案设计的。 然而,新的 ASP.NET Core Razor Pages 代表了 ASP.NET Web Forms 的下一个发展阶段。

        MVVM 框架最出名的是数据模型的双向数据绑定。

        MVC 非常适合具有许多动态服务器视图、单页应用、REST API 和 AJAX 调用的应用。Razor Pages 非常适合只读或进行基本数据输入的简单页面。

什么是Web API?

        MVC 用于 Web 应用程序开发。MVC返回数据和数据视图,而 Web API 仅返回 HTTP 服务数据,即仅以数据形式返回。

ASP.NET Web应用中的 Razor Pages/MVC/Web API/Blazor

        所以如果您了解前端“单页应用程序”框架(如 Vue、Angular、 React.js)并且想要使用该框架构建应用程序,那么您需要使用 ASP.NET Core Web API 构建 API。

Razor Pages 与 ASP.NET MVC

        Razor Pages 和 MVC 各有优势,适用于不同的目的。虽然 Razor Pages 在创建基本页面方面可能更简单、更高效,但 MVC 提供了更灵活、更可扩展的架构,更适合具有更复杂要求的大型项目。

        Razor Pages 还旨在根据文件的用途对其进行分组,并为每个提供增强功能的类提供紧密集成的代码。它们特别适合创建仅允许只读输入数据的基本页面。相比之下,MVC 有三个主要组件模型、视图和控制器。模型包括数据和相关逻辑;它表示在控制器组件之间传输的数据。视图使用从模型数据收集的数据来控制数据的呈现。

ASP.NET Web应用中的 Razor Pages/MVC/Web API/Blazor

        Razor Pages 和 MVC 之间的选择取决于项目的特定需求以及开发团队的偏好和专业知识。

什么是 Blazor?

        Blazor 是基于 HTML、CSS 和 C# 的新式前端 Web 框架,可帮助更快地构建 Web 应用。 借助 Blazor,可以使用可从客户端和服务器运行的可重用组件构建 Web 应用,以便提供出色的 Web 体验。 Blazor 是 .NET 的一部分,它是用于构建任何内容的开发人员平台。 .NET 是免费的开放源代码,并且跨平台运行。

什么是 Blazor? - Training | Microsoft LearnBlazor 是基于 HTML 和 C# 的新式前端 Web 框架,可帮助更快地构建 Web 应用。ASP.NET Web应用中的 Razor Pages/MVC/Web API/Blazorhttps://learn.microsoft.com/zh-cn/training/modules/blazor-introduction/2-what-is-blazor

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]