c#—MVC框架-新闻管理系统一
本文最后更新于:November 10, 2022 pm
c#+MVC框架-新闻管理系统一
一、创建数据库以及表
- 创建数据库(NewsDB)
- 创建Member表(用于存放用户信息)
- 创建新闻信息表(用于联系用户和新闻)
二、创建MVC项目
- 简单来说MVC框架就是Control控制器把Model里面的数据拿出来满足View中界面对数据的需求。
- 打开Visual Studio新建项目
- 项目名字自己命名,直接创建
- 创建一个空的“ASP.NET Web” 应用程序
- 创建完后的界面如下图所示:
三、连接数据库
- 通过上面描述,想必大家已经知道我们需要在Model中创建一个实体承载我们数据库中的数据,接下来让我们在Model中新建项,新建一个实体数据模型
- 按照上面的步骤操作后会出现如下图所示的界面
- 下面通俗地来说一下数据在这个模型中的存在形式
- News表的存在形式也是一样的,都是以表的形式存在的(对象)。
四、创建接口和实现类
- 创建数据库的增删改查操作时间接口(操作方法)
- 代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace NewsSystem.Models
{
public interface IProvider<T> where T : class
{
/// <summary>
/// 对数据库进行的4个操作的接口方法
/// </summary>
/// <returns></returns>
List<T> Select(); // 查询数据库的所有记录
int Insert(T t); // 对数据库进行插入操作
int Update(T t); // 对数据库进行修改的操作
int Delete(T t); // 对数据库进行删除操作
}
} - 两张数据表的增删改查代码(这里提供一个,另一个只需要修改访问的数据库就行)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52namespace NewsSystem.Models
{
public class NewsProvider : IProvider<News>
{
private NewsDBEntities db = new NewsDBEntities();
public int Delete(News t)
{
if (t == null)
return 0;
else
{
var model = db.News.ToList().FirstOrDefault(item => item.Id == t.Id);
if (model == null)
{
return 0;
}
else
{
db.News.Remove(model);
int count = db.SaveChanges();
return count;
}
}
}
public int Insert(News t)
{
if (t == null) return 0;
db.News.Add(t);
int count = db.SaveChanges();
return count;
}
public List<News> Select()
{
return db.News.ToList();
}
public int Update(News t)
{
if (t == null)
return 0;
else {
var model = db.News.ToList().FirstOrDefault(item => item.Id == t.Id);
model.Title = t.Title;
model.Text = t.Text;
int count = db.SaveChanges();
return count;
}
}
}
}在上述代码中可以看到是通过NewsDBEntities来创建的数据库访问对象db,然后通多db来访问数据表
本文作者: 水寿先生
本文链接: http://chen320.github.io/2022/09/20/MVC%E9%A1%B9%E7%9B%AE%E4%B8%80/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!