数据库
数据要求
添加测试数据
1、创建项目
依然创建的是【ASP.NETWeb】应用程序
选择MVC
创建完成
2、添加EF
添加【ADO.NET实体数据模型】
来自数据库的EF设计器
这里新建链接
添加数据库连接,这里测试数据库是本地数据库故而输入【.】
直接点击下一步
默认选择6.x
勾选引入实体模型,点击【完成】即可。
确认引入EF成功
需要使用的上下文对象
3、添加控制器
在【Controllers】中添加【控制器】
添加空【控制器】
输入控制器名称【Users】
使用【上下文对象】需要引入命名空间
【UsersController.cs】控制器代码
public class UsersController : Controller { // GET: Users public ActionResult Index() { using (UsersDBEntities db = new UsersDBEntities()) { ViewBag.lists = db.users.ToList(); return View(); } } }
4、添加视图
在函数名称上点击鼠标右键添加【添加视图】
点击【添加】,这里的视图名称是默认添加的。
视图页
视图代码
<h2>用户列表</h2> <hr/> <table> <tr> <th>编号</th> <th>昵称</th> <th>性别</th> <th>年龄</th> <th>简介</th> </tr> @foreach (var item in ViewBag.lists) { <tr> <td>@item.id</td> <td>@item.userName</td> <td>@item.sex</td> <td>@item.age</td> <td>@item.introduce</td> </tr> } </table>
Ctrl+F5执行显示效果:没有样式,但是数据出来了。
5、修改与删除操作
视图代码
<h2>用户列表</h2> <hr/> <table> <tr> <th>编号</th> <th>昵称</th> <th>性别</th> <th>年龄</th> <th>简介</th> <th>操作</th> </tr> @foreach (var item in ViewBag.lists) { <tr> <td>@item.id</td> <td>@item.userName</td> <td>@item.sex</td> <td>@item.age</td> <td>@item.introduce</td> <td> <a href="~/Users/UpdateById?id=@item.id">修改</a> <a href="~/Users/Del?id=@item.id" onclick="return confirm('是否删除此行?')">删除</a> </td> </tr> } </table>
后台代码
public ActionResult UpdateById(int id) { return View(); } public ActionResult Del(int id) { using (UsersDBEntities db = new UsersDBEntities()) { users u = db.users.Where(o => o.id == id).SingleOrDefault(); db.users.Remove(u); db.SaveChanges(); return RedirectToAction("Index"); } }
由于没有修改页面的视图,故而需要添加
完成具体修改SelectById代码
public ActionResult UpdateById(int id) { using (UsersDBEntities db = new UsersDBEntities()) { users u = db.users.Where(o => o.id == id).SingleOrDefault(); ViewBag.user = u; return View(); } } public ActionResult Del(int id) { using (UsersDBEntities db = new UsersDBEntities()) { users u = db.users.Where(o => o.id == id).SingleOrDefault(); db.users.Remove(u); db.SaveChanges(); return RedirectToAction("Index"); } }
添加【UpdateById】视图
修改视图代码
视图代码
<h2>修改</h2> <hr/> <form action="~/Users/UpdateInfo" method="post"> <input type="text" name="id" value="@ViewBag.user.id" placeholder="请输入编号" readonly/> <input type="text" name="userName" value="@ViewBag.user.userName" placeholder="请输入用户名"/> <input type="text" name="sex" value="@ViewBag.user.sex" placeholder="请输入用户性别"/> <input type="text" name="age" value="@ViewBag.user.age" placeholder="请输入用户年龄"/> <input type="text" name="introduce" value="@ViewBag.user.introduce" placeholder="请输入用户简介"/> <input type="submit" value="修改"/> </form>
添加【UpdateInfo】函数
public ActionResult UpdateInfo(users u) { using (UsersDBEntities db = new UsersDBEntities()) { users old_u = db.users.Where(o => o.id == u.id).SingleOrDefault(); old_u.userName = u.userName; old_u.sex = u.sex; old_u.age = u.age; old_u.introduce = u.introduce; db.SaveChanges(); return RedirectToAction("Index"); } }
6、添加操作
<a href="~/Users/AddPage">添加</a>
添加【AddPage】函数以及【AddPageInfo】
public ActionResult AddPage() { return View(); } public ActionResult AddPageInfo(string userName, string sex, int age, string introduce) { using (UsersDBEntities db = new UsersDBEntities()) { users u = new users(); u.id = 0; u.userName = userName; u.sex = sex; u.age = age; u.introduce = introduce; db.users.Add(u); db.SaveChanges(); return RedirectToAction("Index"); } }
添加【AddPage】的视图
添加【视图】
添加【视图】代码
<h2>AddPage</h2> <hr /> <form action="~/Users/AddPageInfo" method="post"> <input type="text" name="userName" placeholder="请输入用户名" /> <input type="text" name="sex" placeholder="请输入用户性别" /> <input type="text" name="age" placeholder="请输入用户年龄" /> <input type="text" name="introduce" placeholder="请输入用户简介" /> <input type="submit" value="添加" /> </form>
完整功能示例
添加视图
添加成功
修改操作
修改成功
删除功能
删除成功
CRUD展示完毕。