删除

开发工具与关键技术:Visual Studio 和  ASP.NET.MVC,
作者:陈鸿鹏
撰写时间:2019年  5月1日

在做删除之前我们首先要确认好我们要删除的数据是哪一个表,之后我们就是要根据他所需要的表的主键去查询去判断连接。之后就是把所获取的ID拼接到相对应的按钮上。然后就在你所建造的页面cshtml上开始拼写删除的方法,首先

删除
删除
接着就输实现删除,到控制器,由于学院AcademeID 表里面有年级、专业、教师表所以先要查询出是否有的对应的年级、专业、教师,有则不能删除,请先删除对应的年级、专业、教师! 这就为判断。public ActionResult 所要获取的主键 从哪个表里面获取主键数据 :(更具所需填写int AcademeID)然后就是一个捕抓错误的判断try{ } catch{}分别在他们的花括号里面写入查询和判断。try{先从session中获取为对应的年级、专业、教师表 声明一个变量为对应的年级、专业、教师,用来接收查询出来的数据再声明一个变量tbAcademe,用来接收查询出来的数据,然后再声明一个变量为对应的年级、专业、教师用来接收我的模型中的SYS_Academe表的数据,在SYS_Academe表中查询出为对应的年级、专业、教师表中的用户ID(为对应的年级、专业、教师)等于上面从session中获取的用户ID(为对应的年级、专业、教师)的数据,
select 查询出对应的年级、专业、教师的条数据,Count();意思就查询出来统计有多少条数据。try {} catch { }: 捕获异常,如下图所示
public ActionResult DeleteAcademe(int AcademeID)
{
ReturnJsonVo returnJson = new ReturnJsonVo();
returnJson.State = false;
try
{
//检查年级是否有相关联的的数据,有测不能删除
int intGradeRow = (from tbGrade in myModel.SYS_Grade
where tbGrade.AcademeID == AcademeID
select tbGrade).Count();
if (intGradeRow > 0)
{
returnJson.State = false;
returnJson.Text = “有对应年级,不能删除,请先删除对应的年级!”;
return Json(returnJson, JsonRequestBehavior.AllowGet);
}
//检查专业是否有相关联的的数据,有测不能删除
int intSpecialtyRow = (from tbSpecialty in myModel.SYS_Specialty
where tbSpecialty.AcademeID == AcademeID
select tbSpecialty).Count();
if (intSpecialtyRow > 0)
{
returnJson.State = false;
returnJson.Text = “有专业对应,不能删除,请先删除对应的专业!”;
return Json(returnJson, JsonRequestBehavior.AllowGet);
}
//检查教师是否有相关联的的数据,有测不能删除
int intTeacherRow = (from tbTeacher in myModel.PW_Teacher
where tbTeacher.AcademeID == AcademeID
select tbTeacher).Count();
if (intTeacherRow > 0)
{
returnJson.State = false;
returnJson.Text = “有教师用户对应,不能删除,请先删除对应的教师用户!”;
return Json(returnJson, JsonRequestBehavior.AllowGet);
}
删除
接着就是删除学院信息
先从session中获取SYS_Academe表 声明一个变量sysAcademe,用来接收查询出来的数据再声明一个变量tbAcademe,用来接收查询出来的数据,然后再声明一个变量tbAcademe用来接收我的模型中的SYS_Academe表的数据,在SYS_Academe表中查询出SYS_Academe表中的用户ID(AcademeD)等于上面从session中获取的用户ID(AcademeId)的数据。select查询出tbAcademe里面的数据 这个Single();的意思就是查询出来的数据只有唯一的一条数据。
接着myModel.SYS_Academe.Remove(sysAcademe); int intR = myModel.SaveChanges();从myModel里面的这个表SYS_Academe 删除,int intR = myModel.SaveChanges()进行保存,
接着判断如图所示
//===删除学院信息
查询出数据库里面的唯一一条数据输出
SYS_Academe sysAcademe = (from tbAcademe in myModel.SYS_Academe
where tbAcademe.AcademeID == AcademeID
select tbAcademe).Single();
// Linq 删除
从数据库里面的SYS_Academe这一张表里面删除
myModel.SYS_Academe.Remove(sysAcademe);
int intR = myModel.SaveChanges();
if (intR > 0)判断是否大于0 ,大于就if删除成功,小于 0 删除失败
{
returnJson.State = true;
returnJson.Text = “删除成功”;
}
else
{
returnJson.Text = “删除失败”;
}
}
catch (Exception e)
{
returnJson.Text = “参数异常”;
Console.WriteLine(e);
//throw;
}
return Json(returnJson, JsonRequestBehavior.AllowGet);输出页面
}
删除
以上的内容多数是获取 查询 判断 输出数据