目录
一、语言和环境
1. 实现语言:C#语言。
2. 环境要求:Visual Studio 2012 + SQL Server 2012 或以上版本。
3. 实现技术:ASP.NET MVC+EF(100 分)或 ASP.NET+三层+EF(90 分)。
4. 功能要求:使用框架模板自动生成的代码,所对应的功能不得分。
二、实现功能
使用 ASP.NET 技术实现零食后台管理——零食管理,具体实现功能如下:
1. 打开零食管理后台管理页面,展示所有零食商品信息,如图 1 所示。
图一:首页效果
2. 点击“查询”按钮,如图 2 所示;按商品名称关键字对商品进行模糊查询,如图 3 所示。
图二:输入关键字
图三 :关键字查询页面效果
3. 点击“删除”按钮,提示是否删除,如图 4 所示;点击“确定”后,删除所对应的零食信息,删 除成功后显示首页。
图四:删除效果图
4. 点击“详情”按钮,展示数据详情,如图 5 所示。
图五: 详情页效果图
三、数据库设计
1. 创建商城项目数据库(ProductDB)。
2. 创建商品表(goods),表结构见表 1。
表 1: goods 表结构
四、具体要求及推荐实现步骤
1. 按以上数据库要求建库、建表,并添加测试数据,如图 6 所示。
图 6 :表中添加的测试数据
2. 搭建系统框架
3. 首页数据的展示
(1)按照首页效果图创建数据展示页面或者视图。
(2)根据页面显示效果,要求商家日期按照“YYYY 年 MM 月 DD 日”的格式显示;价格显示保留两 位小数,以人民币形式显示,如“¥2.50 元”。
4. 关键字查询
(1)正确查询出商品名称里面包含关键字的对应商品,并显示在下方列表中。
(2)如果关键字为空,点击查询按钮,则显示所有商品。
5. 删除商品
(1)点击删除按钮,弹出确认删除提示框,点击“确定”才删除掉对应数据,点击“取消”,则不删除 数据。
(2)删除成功之后,刷新页面数据。
6. 详情展示
(1)按照详情图创建数据展示页面或者视图。
(2)点击详情按钮,跳转至详情页面,并显示对应数据的详情。
(3)添加返回列表页的超链接。
五、评分标准
六、具体要求及推荐实现步骤
(一)、建库建表
use master
go
if DB_ID ('ProductDB')is not null
drop database easyShopping
go
create database easyShopping on(
name='ProductDB',
filename='D:\ProductDB'
)
go
use easyShopping
go
if object_ID('goods')is not null
drop table goods
create table goods(
goodid int not null primary key identity(1,1),
goodname nvarchar(50) not null,
launchtime Date not null,
price Money not null,
description nvarchar(Max)
)
go
编辑前200行
(二)、 项目创建
(三)、引入EF
(四)、 创建控制台
(五)、添加视图
(六)、项目代码
1、首页前台代码
<h2>零食管理后台首页,欢迎你:admin</h2>
<form method="post">
<p>
关键字:<input type='text' id='GoodName' name='GoodName' />
<input type="submit" value="查询" />
</p>
<table>
<tr>
<td>商品名称</td>
<td>价格</td>
<td>上架时间</td>
<td>操作</td>
</tr>
@foreach (var item in ViewBag.list)
{
<tr>
<td>@item.goodname</td>
<td>@item.price.ToString("C2")</td>
<td>@item.launchtime.ToString("yyyy年MM月dd日")</td>
<td>
<span><a href="~/goods/del/@item.goodid" onclick="return confirm('确定要删除吗')">删除</a></span>
<span><a href="~/goods/details/@item.goodid">详情</a></span>
</td>
</tr>
}
</table>
</form>
2、详情页代码
<h2>零食详情页</h2>
<p>商品名称:@ViewBag.name</p>
<p>商品价格:@ViewBag.price</p>
<p>上架时间:@ViewBag.date</p>
<p>商品详情:@ViewBag.description</p>
<a href="~/goods/Index">返回列表</a>
3、后台代码
//首页
public ActionResult Index(string GoodName = "")
{
ProductDBEntities db = new ProductDBEntities();
ViewBag.list = db.goods.Where(o => o.goodname.Contains(GoodName)).ToList();
return View();
}
//详情页
public ActionResult details(int id)
{
using (ProductDBEntities db = new ProductDBEntities())
{
goods g = db.goods.Find(id);
ViewBag.name = g.goodname;
ViewBag.price = g.price;
ViewBag.date = g.launchtime;
ViewBag.description = g.description;
}
return View();
}
//删除
public ActionResult del(int id)
{
//创建上下文对象
using (ProductDBEntities db = new ProductDBEntities())
{
goods s = db.goods.Find(id);
db.goods.Remove(s);
if (db.SaveChanges() > 0)
{
return RedirectToAction("Index");
}
else
{
return RedirectToAction("Index");
}
}
}
希望对大家有所帮助!