删除
批量删除考生信息
简单说一下批量删除信息这个功能,一说到删除估计大家就能想到要处理的是一些多余的、没有作用的数据。比方说,学生在考完毕业考试的时候,在得到成绩信息以后,这些考生信息就基本没有什么用处了。又或者有的考生在考试的过程中因为作弊被取消考试资格的,如果想一次性把这些考生信息解决掉,那么就需要用到批量删除这个功能了。
批量删除考生信息的主要代码:
public ActionResult delStuInfos(string StudentIds)
{
string strMsg = "failed";
int countSuccessDel = 0;//记录删除成功的数据条款
int countFailedDel = 0;//记录删除失败的数据条款
if (!string.IsNullOrEmpty(StudentIds))
{
//对拼接好的id进行分割
string[] studentIds = StudentIds.Split(';');
foreach (string studentId in studentIds)
{
try
{
//将string类型的数据转化为int
int StudentID = Convert.ToInt32(studentId);
//学生表
PW_Student dbstudent = (from tbStudent in myModels.PW_Student
where tbStudent.studentID == StudentID
select tbStudent).Single();
myModels.PW_Student.Remove(dbstudent);
//获取删除学生的userId
int? UserId = dbstudent.UserID;
//用户角色明细表
PW_UserRoleDetail dbUserRoleDetail = (from tbUserRoleDetail
in myModels.PW_UserRoleDetail
where tbUserRoleDetail.UserID == UserId
select tbUserRoleDetail).Single();
myModels.PW_UserRoleDetail.Remove(dbUserRoleDetail);
//用户表
PW_User dbUser = (from tbUser in myModels.PW_User
where tbUser.UserID == UserId
select tbUser).Single();
myModels.PW_User.Remove(dbUser);
//保存数据
myModels.SaveChanges();
countSuccessDel++;
}
catch (Exception)
{
countFailedDel++;
}
}
strMsg = "总共需要删除" + studentIds.Length + "条学生信息!其中成功删除" + countSuccessDel + "条,失败" + countFailedDel + "条。";
}
else
{
strMsg = "参数异常";
}
return Json(strMsg, JsonRequestBehavior.AllowGet);
}
视图的代码:
效果:
在选择了多条需要删除的考生信息之后,再点击批量删除按钮就会弹出一个提示框,提示你是否确定要删除选中的考生信息。点击了确定会再次弹出一个提示框,显示删除信息成功与失败的条数,这样的效果非常方便我们查看。使我们在操作完批量删除以后第一时间知道删除信息的大体情况,回头校对的时候有数据可以参考。