基于.NET Core 3.1 网站开发和部署的方法(5)

using System.Collections.Generic; using DAL; using Models; namespace BLL { public class NewsManager { private NewsService objService=new NewsService(); /// <summary> /// 添加新闻 /// </summary> /// <param></param> /// <returns></returns> public int AddNews(News news) => objService.AddNews(news); /// <summary> /// 修改新闻 /// </summary> /// <param></param> /// <returns></returns> public int ModifyNews(News news) => objService.ModifyNews(news); /// <summary> /// 删除新闻 /// </summary> /// <param></param> /// <returns></returns> public int DeleteNews(string newssId) => objService.DeleteNews(newssId); /// <summary> /// 获取指定数量的新闻列表 /// </summary> /// <param></param> /// <returns></returns> public List<News> GetNews(int count) => objService.GetNews(count); /// <summary> /// 根据ID获取新闻信息 /// </summary> /// <param></param> /// <returns></returns> public News GetNewsById(string newssId) => objService.GetNewsById(newssId); /// <summary> /// 获取所有的新闻分类 /// </summary> /// <returns></returns> public List<NewsCategory> GetCategories() => objService.GetCategories(); } }

3.添加一个控制台项目用来测试

添加需要的引用

dotnet add package Microsoft.EntityFrameworkCore.Design dotnet add package Pomelo.EntityFrameworkCore.MySql

DbContext中的数据库连接字符串添加回去

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { if(!optionsBuilder.IsConfigured) { optionsBuilder.UseMySql("Server=192.168.30.110;DataBase=HotelWebDb;User=sa;Pwd=110;",x => x.ServerVersion("5.5.64-mariadb")); } }

编写测试代码

News news=new News() { NewsContent="你好这是一个测试新闻内容", NewsTitle="测试新闻", CategoryId=1 }; Console.WriteLine(objNews.AddNews(news));

启动调试
选择启动项目有两种方法

①通过solution explorer 插件选择

基于.NET Core 3.1 网站开发和部署的方法


②通过配置launch.json 文件启动

基于.NET Core 3.1 网站开发和部署的方法

基于.NET Core 3.1 网站开发和部署的方法


然后修改启动程序入口就可以了

{ "name": ".NET Core Launch (console)", "type": "coreclr", "request": "launch", "preLaunchTask": "build", "program": "${workspaceFolder}/UnitTestPro/bin/Debug/netcoreapp3.1/UnitTestPro.dll", "args": [], "cwd": "${workspaceFolder}", "stopAtEntry": false, "console": "internalConsole" },

还要修改task文件,否则测试项目中新加的代码不能被执行。

基于.NET Core 3.1 网站开发和部署的方法

结果查验

基于.NET Core 3.1 网站开发和部署的方法


结果符合预期

注意事项
修改新闻调用的方法不支持部分属性修改,如果对象属性不设置,那么没有设置的字段被设置为空。
后面有字段部分修改的方法。

News news=new News() { Id=1008, NewsContent="修改新闻的内容", NewsTitle="这是被修改的新闻标题", }; Console.WriteLine(objNews.ModifyNews(news));

基于.NET Core 3.1 网站开发和部署的方法

4.编写菜品预订

5.编写招聘

6.编写投诉和建议

7.管理员登录

类似不再贴代码

四、前端UI实现

1.完成前端Html代码的编写

不多说

2.完成MVC项目中控制器和视图的文件添加

这个只能手动添加,不像VS有模板可用

基于.NET Core 3.1 网站开发和部署的方法

3.复制网站的静态资源

asp.net core 网站静态资源都是放在wwwroot目录的,并且文件名一般是小写。

基于.NET Core 3.1 网站开发和部署的方法

4.在视图中引用资源

MVC框架可以直接识别在wwwroot中的静态资源,不用写显示的写出目录名。

<link href="https://www.jb51.net/~/lib/bootstrap/dist/css/bootstrap.min.css" /> <link href="https://www.jb51.net/~/css/site.css" />

5.编写动作方法

public IActionResult Index() { return View(); }

6.添加视图

基于.NET Core 3.1 网站开发和部署的方法

7.启动调试

首页效果图

基于.NET Core 3.1 网站开发和部署的方法

8.视图与控制器之间传递数据

使用ViewData

视图的网页标题可以使用这种方式传递

public IActionResult Index() { ViewData["title"]="好运来酒店"; ViewBag.list=new NewsManager().GetNews(4); return View(); }

视图中引用数据

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wxgdfp.html