从模型到视图:如何用 .NET Core MVC 构建完整 Web 应用
MVC模式自出现以来便成为了 Web 开发的基石,它通过将数据、业务逻辑与用户界面分离,使得应用更加清晰易于维护,然而随着前端技术的飞速发展和框架如 React、Vue、Angular 等的崛起,许多开发者开始倾向于前后端分离的方式,甚至完全不再依赖传统的 MVC 架构。
本篇文章仅仅做一个简单的介绍,选择什么模式开发还是取决于具体的项目情况!
目录
初识.net core
什么是.net?一个由微软开发的跨平台开源的开发平台,用于构建各种应用程序,提供了一整套用于构建和运行应用程序的工具和库,开发者可以使用.net来创建web应用、桌面应用、移动应用、云服务、游戏等多方面应用。
什么是.net framework?是微软于2002年发布的开发平台,主要用于构建windows操作系统上的桌面应用、web应用和服务,其包含了丰富的类库如asp.net和winforms以及一个运行时环境,使得开发者可以使用多种编程语言构建应用程序。
什么是.net core?由微软开发的开源跨平台的开发框架,用于构建现代化高性能的应用程序,支持在不同操作系统上开发和运行应用,与传统的.net framework不同,.net core是专为跨平台开发设计的因此可以在不同平台上运行相同的代码,如下图所示:
.net的发展节奏基本上是每年11月份会发布新主要版本,以支持开发人员及其企业规范提供路线:
想要了解更改关于.net core相关知识也可以随时阅读 官方文档 ,里面也是详细记载了.net core相关的一些方法是,如下所示:
简而言之:.net core是.net平台的一部分,针对跨平台开发进行了优化,而.net framework是较老的、只支持windows框架,随着.net5及后续版本的发布,微软通过统一的.net平台,结合了.net core是.net和.net framework的优势,推动了技术的现代化和跨平台发展。
新建.net core
这里通过visual studio工具进行项目编写,没有下载过该工具的可以参考我之前的文章:地址 ,这里不再赘述,接下来讲解如何新建.net core项目进行开发,如下所示:
创建项目:打开visual studio之后点击创建新项目,然后选择C#语言web方向,然后选择当下模型-视图-控制器方式的.net core项目,如下:
然后输入创建项目的名称及其解决方案的名称和文件位置,选择好点击下一步即可:
然后这里我们选择.net core8版本进行项目创建,其他的配置直接默认即可,然后点击创建可以看到我们的 .net core 项目已经成功的被创建出来了:
然后我们直接点击开始执行不调试项目,可以看到我们的项目已经被成功运行起来了:
目录内容介绍
接下来我们对.net core框架生成的目录结构进行一一的介绍,框架生成的目录如下所示:
Connected Services:作用是项目用来链接服务的,我们可以右键它来添加链接服务,
Properties:项目配置文件,文件夹下面的launchSettings.json配置文件作用是在项目启动的时候进行配置,比如说IIS启动项目我们可以配置其域名和端口号,后期的协议、端口号等等配置也可以在该文件中进行设置,如下所示:
wwwroot:用于存放前端的一些静态文件:
依赖项:专门用来管理NuGet安装的一些程序包,引入项目的时候可以通过它进行处理:
Controllers:控制器文件,主要用来编写业务逻辑并做一些业务逻辑计算
Models:模型文件,主要作为数据传输的一个存储介质,如各种实例对象
Views:视图文件,主要作为一个表现层用来展示给用户查看
这些文件就是MVC(模型-视图-控制器)模型,这里后期就是我们项目进行开发的地方:
appsettings.json:也是一个配置文件,用于存储应用程序的设置和配置项,这个文件通常包含应用程序在运行时所需的配置信息,比如数据库连接字符串、日志设置、外部服务的 API 密钥、应用程序的自定义设置等:
Program.cs:是应用程序的入口点,包含了应用启动的核心代码,是整个应用程序启动过程的起点负责配置和启动应用程序所需的所有内容,自.net6引入了简化的托管api之后,Program.cs 变得更加简洁和集中,通常与Startup.cs文件的功能合并了:
项目基本开发
接下来我们开始正式进行.net core开发,如下所示:
添加控制器:我们直接右键控制器文件添加新的控制器
这里我们选择空的模板,然后输入控制器的名称然后点击添加即可,如下所示:
添加视图:控制台当中的每一个文件里的index方法称为一个action,我们在创建好的控制器文件当中右键选择添加视图,然后选择第二个非空视图进行添加,然后再添加创建即可:
这样在视图添加的过程当中就会对应的在Views文件夹里面生成一个和上面创建控制器的前面的名称保持一样的文件夹出来,文件夹里的文件是一个以.cshtml为后缀结尾的文件,其指定的Index就是我们之前创建的控制器当中的index方法,控制台
接下来我们就可以在项目中编写代码了,首先我们先在控制台当中编写将数据传递到视图的不同机制方法,如下所示:
1)ViewBag:动态对象,用于将数据从控制器传递到视图
2)ViewData:字典,用于存储和传递数据,视图可以通过键访问它
3)TempData: 用于跨请求传递数据,通常用于重定向后传递数据
4)Session:用于在用户会话期间存储数据,数据会在多次请求之间保持
5)返回视图:普通对象,作为模型传递给视图
虽然控制器通过return View(User5); 只传递了模型User5但控制器中设置的ViewBag、ViewData、TempData和Session会随着请求的上下文一同传递,因此视图可以访问到这些数据,如下:
使用Session的话我们需要在入口文件中进行一个注册:
最终程序的效果如下所示:
原文地址:https://blog.csdn.net/qq_53123067/article/details/144395623
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!