数据删除的代码在控制器中是:
public ActionResult DeleteGrade(int GradeID)
{
ReturnJson msg = new ReturnJson();
msg.State = false;
var listClass = myModel.SYS_Class.Where(m => m.GradeID == GradeID).ToList();
var listStudent = myModel.PW_Student.Where(m => m.GradeID == GradeID).ToList();
var listGrade = myModel.SYS_Grade.Where(m => m.GradeID == GradeID).ToList();
try
{
if (listClass.Count() == 0)
{
if (listStudent.Count()== 0)
{
if (listGrade.Count > 0)
{
myModel.SYS_Grade.Remove(listGrade[0]);
if (myModel.SaveChanges() > 0)
{
msg.State = true;
msg.Text = “数据信息删除成功!”;
}
else
{
msg.Text = “数据信息删除失败!”;
}
}
else {
msg.Text = “选择的数据数据不存在!”;
}
}
else {
msg.Text = “该数据关联有listStudent数据,故不能删除该数据!”;
}
}
else {
msg.Text = “该年级数据关联有istClass数据,故不能删除该数据!”;
}
}
catch (Exception e)
{
msg.Text = “这里出现了一个bug,请检查数据!”;
}
return Json(msg, JsonRequestBehavior.AllowGet);
}
Var 语句是查询SYS_Class、PW_Student、SYS_Grade的数据
外面的两个if语句分别判断listClass、listStudent中是否有数据,如果有,就不能进行删除操作
视图中的代码为:
function saveDelete(GradeID){
layer.confirm(“确定删除数据?”,{icon:3,title:‘提示’},function(index){
layer.close(index);
$.getJSON(“DeleteGrade?GradeID=” + GradeID, function (msg) {
if (msg.State) {
layer.alert(msg.Text, { icon: 1, offset: ‘150px’ });
TabGrade = layuiTable.reload(‘tabGrade’);
} else {
layer.alert(msg.Text, { icon: 5, offset: ‘150px’ });
}
});
});
}
“layer.confirm(“确定删除数据?”,{icon:3,title:‘提示’}”这句是弹出提示框:
“TabGrade = layuiTable.reload(‘tabGrade’);”是数据成功删除后刷新表格。