///
/// 查询数据库中学生姓名
///
///
public ActionResult Index()
{
//使用linq,查询数据上下文中的学生姓名
List
list = (from d in db.T_student select d).ToList();
//将集合数据传给视图
ViewData["DataList"] = list;
return View();
} ///
/// 根据学生ID删除学生
///
/// 学生ID
///
public ActionResult Del(string id)
{
//创建要删除的实体,并将ID赋值给实体对象
T_student modelDel = new T_student() { studentId = id };
//将实体对象添加到EF管理容器
db.T_student.Attach(modelDel);
//将实体对象包装类标示为删除状态
db.T_student.Remove(modelDel);
//更新数据库
db.SaveChanges();
//更新成功,跳转到Index
return RedirectToAction("Index","MyClass");}#region 显示要修改的数据
[HttpGet]
///
/// 显示要修改的数据
///
/// 要修改的学生ID
///
public ActionResult Modify(string id)
{
//根据学生ID,查询数据库,返回集合中拿到第一个实体对象
T_student ts = (from a in db.T_student where a.studentId == id select a).FirstOrDefault();
//查询课程名称
IEnumerable listItem=(from c in db.T_class select c).ToList().Select(c=>new SelectListItem{Value=c.classId.ToString(),Text=c.className});
//查询到的课程名称给Viewbag
ViewBag.classList = listItem;
//使用View,将数据传给视图上名为model的属性
return View(ts);
}
#endregion
#region 保存要修改的数据
[HttpPost]
///
/// 保存要修改的数据
///
/// 要修改的学生ID
///
public ActionResult Modify(T_student ts)
{
//将实体对象加入EF对象容器中,并获取包装类对象
DbEntityEntry entry=db.Entry(ts);
//将包装类设置为unchange
entry.State = System.Data.EntityState.Unchanged;
//设置被改变的属性
entry.Property(a=>a.studentName).IsModified=true;
entry.Property(a => a.classId).IsModified = true;
//提交更新到数据库
db.SaveChanges();
//更新成功,跳转到Index
return RedirectToAction("Index", "MyClass");
}
#endregion 3.添加查询列表视图(Index.cshtml)
@using MyMvcTest.Models
@{
Layout = null;
}
Index
id |
姓名 |
课程ID |
编辑 |
@foreach (T_student student in ViewData["DataList"] as List)
{
@student.studentId |
@student.studentName |
@student.classId |
删除
修改
|
}
添加“修改”视图(modify.cshtml)
十载专注成都网站制作,企业网站制作,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于企业网站制作,高端网页制作,对成都混凝土搅拌罐等多个领域,拥有丰富的网站维护经验。@model MyMvcTest.Models.T_student
@{
Layout = null;
}
Modify
@using (Html.BeginForm("Modify", "MyClass", FormMethod.Post))
{
}
分享标题:mvc+linq+EF对数据表的查删改-创新互联
转载注明:http://bzwzjz.com/article/eicjc.html