目录
语言和环境
实现功能
数据库设计
具体要求及推荐实现步骤
数据库创建
编辑建表sql
项目创建
编码
添加视图
遍历视图及生成样式
创建添加视图
遍历添加视图以及创建添加函数
删除函数
运行效果
1. 实现语言:C#语言。
2. 环境要求:Visual Studio 2012+SQL Server 2012 或以上版本。
3. 实现技术:ASP.NET MVC+EF
1. 首次打开页面,显示书库中所有的图书信息,如图 1 所示。
2. 点击超链接“新增图书”显示新增图书页面,如图 2 所示。
3. 点击“添加”按钮新增图书,需进行表单验证,其中,书籍名称、出版社、出版日期、单价必须 输入,若验证失败,效果如图 3 所示。
4. 成功添加图书之后,显示首页页面,如图 4 所示。
5. 点击操作栏“删除”按钮,提示是否删除指定书籍,如图 5 所示,点击“确定”后,删除所对应
的图书信息,删除成功后显示首页。
1、创建数据库(BookDB)。
2、创建图书表(BookInfo),结构如下:
1. 按以上数据库要求建库、建表,并添加测试数据,如图 6 所示。
2. 搭建系统框架。
3. 按照首页效果图创建首页,初次加载显示所有图书信息。
4. 点击“新增图书”,显示新增页面;点击“添加”时,如果未按要求填写信息,显示非空验证结 果;正确填写图书信息,则添加图书信息到数据库,并显示首页信息。
5. 点击操作栏“删除”按钮,提示是否删除,点击“确定”后,删除对应的图书信息,并显示首页 信息。
1、使用Navicat创建数据库
2、创建BookInfo表,设置主键id,钥匙代表主键,标识代表自增。
3、向表中添加数据
create table BookInfo (
BookId int primary key identity(1,1),
BookName varchar(50) not null,
Publishing varchar(500) not null,
PublishDate date not null,
Price decimal(18,2) not null
)
insert into BookInfo values('漫画威龙','武汉大学出版社','2021-05-21',120.00)
insert into BookInfo values('生存还是死亡','武汉出版社','2020-03-21',180.00)
insert into BookInfo values('思维导图','人民出版社','2019-08-21',199.00)
insert into BookInfo values('水浒传','人民出版社','1990-01-21',210.00)
insert into BookInfo values('三国演义','人民出版社','1998-07-21',398.00)
引入EF
新建sqlserver链接
连接成功
引入完毕
需要使用的对象【BookDBEntities】
创建控制器
引入命名空间以及使用EF进行数据查询。
@{
ViewBag.Title = "Index";
}
图书列表
新增图书
编号
书籍名称
出版社
出版日期
单价
操作
@foreach (var item in ViewBag.list)
{
@item.BookId
@item.BookName
@item.Publishing
@Convert.ToDateTime(@item.PublishDate).ToString("yyyy年MM月dd日")
¥@item.Price
删除
}
public ActionResult AddPage()
{
using (BookDBEntities db = new BookDBEntities())
{
return View();
}
}
@{
ViewBag.Title = "AddPage";
}
新增图书
@{
ViewBag.Title = "Index";
}
图书列表
新增图书
编号
书籍名称
出版社
出版日期
单价
操作
@foreach (var item in ViewBag.list)
{
@item.BookId
@item.BookName
@item.Publishing
@Convert.ToDateTime(@item.PublishDate).ToString("yyyy年MM月dd日")
¥@item.Price
删除
}
public ActionResult Del(int id)
{
using (BookDBEntities db = new BookDBEntities())
{
BookInfo book = db.BookInfo.Where(o => o.BookId == id).SingleOrDefault();
db.BookInfo.Remove(book);
if (db.SaveChanges() > 0)
{
return Redirect("~/BookDB/Index");
}
return Content("");
}
}