EasyUi+MVC+WCF 删除信息--考试系统

直接奔入主题吧,主要想写的是一个批量删除,如何从前台的DataGrid中获取相应的ID然后传到后台进行批量删除。

前台DataGrid页面:用EasyUI画的

具体的代码:

前台Js中要写的:

//删除
$("#btn_Remove").unbind("click").click(function destroyExaminee() {
    //获取选中行数
    var rows = $('#dg').datagrid('getSelections');

    //判断是否选择行
    if (!rows || rows.length == 0) {
        $.messager.alert('提醒', '请至少要选择一行数据!', 'Info');
        return;
    }
    //获取表格选择行
    var strId;
    //循环给提交删除参数赋值(考生ID)
    $.each(rows, function (i, n) {
        if (i == 0) {
            strId = "ExamineeId=" + n.ExamineeId;
        } else {
            strId += "&ExamineeId=" + n.ExamineeId;
        }

    });
    //二次确认
    $.messager.confirm('提示', '是否删除选中数据?', function (r) {

        if (!r) {
            return;
        }
        //提交,将获取的数据传到后台
        $.ajax({
            type: "POST",
            async: false,
            url: "/Examinee/DeleteExaminee",
            data: strId,
            success: function (data) {
                var jsondata = eval(data);
                $('#dg').datagrid('loadData', data);
            }
        });
    });
});

MVC的Controller中要写的代码:

        /// <summary>
        /// 删除考生信息
        /// </summary>
        /// <param name="iList"></param>
        /// <returns></returns>

        public bool DeleteExaminee()
        {
            //从前台捕获数据
            string strExamineeId = Request.Form["ExamineeId"];
            //将捕获的数据转换成数组
            string[] listEnExamineeId = strExamineeId.Split(new char[] { ',' });

            List<ExamExamineeExamRoomEntity> listExamineeId = new List<ExamExamineeExamRoomEntity>();
            //3.把要删除的id 存放到一个 考生实体集合中
            for (int i = 0; i < listEnExamineeId.Count(); i++)
            {
                string tempStr = listEnExamineeId[i].ToString();
                listExamineeId.Add(new ExamExamineeExamRoomEntity());
                listExamineeId[i].ExamineeId = tempStr;

            }
            //调用服务层的删除方法
            bool IsDeleteSuccess = examineeService.DeleteExamineeByExamineeId(listExamineeId);
            return IsDeleteSuccess; //这里返回的还是在前台选中的数据ID list集合,可以返回其他数据
        }

然后是WCF服务层,调用B层的方法

下面是B层的方法

底层框架是已经提前搭好的,该删除是假删除,为了保留学生的考试记录,只是在表中添加了一个删除的标识。

/// <summary>
        /// 删除考生信息(按考生ID修改考生删除标识)-- 2014-12-16 11:01:52
        /// </summary>
        /// <param name="listExamineeId">考生ID实体集合</param>
        /// <returns>返回是否删除成功,成功为True,失败为False</returns>
        public bool  DeleteExamineeByExamineeId(List<ExamExamineeExamEntity> listExamineeId)
        {

            try
            {
                 for (int i = 0; i < listExamineeId.Count; i++)
                 {
                     //1.创建删除考生的 实体 规则
                     ExamExamineeExamEntity tempExaminee = new ExamExamineeExamEntity()
                     {
                         IsDeleteExamineeExam = 1
                     };
                     //删除考生
                     string guid = listExamineeId[i].ExamineeId;
                     this.CurrentDal.Update(tempExaminee, u => u.ExamineeId == guid, "IsDeleteExamineeExam");
                 }
                 //保存信息,返回True
                this.DbSession.SaveChanges();
                return true;
            }
            catch (Exception ex)
            {
                //抛出异常
                throw (ex);
            }  

通过这次参加考试系统的项目,感触最深的就是知识你可能已经学过了,但是你没有办法把它应用到实践中去,所以你只是学过了,而不是学会了,实践才是硬道理啊~~

时间: 2024-10-22 01:20:44

EasyUi+MVC+WCF 删除信息--考试系统的相关文章

.NET考试系统V1.0.0总结

考试系统.NET版本V1.0.0在为期68天后,终于完成了.特此总结一下,主要说说技术.团队合作.UI设计方面,以此给自己一个总结,通过V1.0.0版本,让自己站的更高.看的更远. 技术方面: EF: 整个项目也EF为框架,采用ModelFirst下的两种方式来映射数据库,前期,在PD中设计好实体,转换成数据库,然后倒入SQLServer中,使用ModelFirst中的采用数据库更新到模型的方式,建立模型,接来下来的更新数据库的时候,采用模型更新到数据库的方式更新数据库,这样做的好处是避免了在E

考试系统之批量删除

刚上手考试系统,感觉很难,什么也不会,主要是里面加了MVC框架,加上一些新的技术,而今天就让我们研究其中的一条线.就拿删除功能来理清我们的思路吧. 而对于删除可以分为两个步骤:1.从前台获取要删除考试的ID. 2.根据考试ID进行删除. 首先是js代码: <span style="font-family:KaiTi_GB2312;font-size:18px;">//批量删除 $("#btn_Remove").unbind("click&quo

考试系统阶段小结(一)

做考试系统有两个半月了,1.0迭代已经结束,现在进入V2.0阶段都有将近一个星期的时间了.总体来说还是有很大收获的,无论是从技术上.思想上还是自己的学习方法上等. 先从技术上说吧,自己以前学B/S时候都是看看视频,敲敲例子,也很少自己像当初学习VB时候还一段一段代码那样写了,都是看一行写一行,但实现完成后的满足感却丝毫没有减少.这样就造成了盲目赶进度,基础没有打扎实.在Javascript和Ajax的项目使用中尤为明显,做着比较有难度. 自己的代码调适能力通过项目有了一定的提高. 从调试方法上来

使用TT模板+mvc+wcf实现简单查询

伴随着春姑娘调皮的脚步,小编接手的档案管理项目也渐渐步入正轨,从开始的需求分析,到使用Axure画原型图,再到使用powerdesigner设计实体,生成数据库,一直到昨天刚刚通了一条线,这一路走来,小编懂得了很多,无路学习还是和团队小伙伴的交流合作,有时候,总是会因为大家意见不统一,搞的大家吹胡子瞪眼,但有时也会因为某件事情圆满成功而欢欣鼓舞,小组中最开心的事儿莫过于有人开会迟到买吃的了,哈哈,暴露了小编的本质,开头说了这么多,接下来,小编就跟分享一下,如果利用TT模板+mvc+wcf实现简单

考试系统的基础维护--基本表的连接操作

这次有幸帮师姐进行考试系统的基础维护,说直接点就是对考试人员的管理,增删改查,最基本的还是查询学生,用来和老师所给的信息进行核对,最后再确定考试的人员,在查询的过程中就遇到了这种一种情况:   在对English考试的人员进行核对的时候,为了方便查询,而建立的一个相关的视图,该视图所涉及到的表有:TB_Student(学生基本信息),TB_ExecutiveClass(涉及到所在的班级),TB_DepartmentName(所属专业),TB_CollegeName(所属学院),TB_Englis

考试系统之“实战判分”

前几天去五楼跟英语老师们好好"打了几天交道",跟着二十几个英语老师待了两天,深刻体会到了什么是"客户需求"和"系统问题". 一.背景介绍 当时面对的客户还好,都是一些高素质的教师,而且还是比较温和些的女教师.她们在使用考试评分系统时遇到了种种问题,着实让基本没见过大场面的"青涩少年"开了一把眼界.老师们的抱怨.无奈让记录着问题的我们也感触颇深,理解了一个良好可用的系统对用户是多么重要,也表示我们程序员.设计者需要考虑的问题还太

zzzzw_在线考试系统①准备篇

在弄完购物系统之后,小博也了解了解怎么用struts这个框架捣鼓一个在线考试系统 购物系统用的是MVC模式,现在这个struts2原理上也是基于MVC模式的.那么要做这个东西之前先了解一下难点在哪里 1.首先肯定是struts框架的搭建的问题啦.这个肯定是最让人恶心的,上次根据一个基于struts框架的学生信息管理系统成功搭建过struts框架.早上重新试着搭建了一下框架,发现用不了,于是我怒了,果断把上次的项目直接拿出来,把框架留下,其余的东西可以删除掉.不多说,分享一下struts2的框架给

在线考试系统视频教程和源码

购买视频教程QQ:1416759661  淘宝网担保交易 安全便捷 视频教程是高清完整版 放心购买 安心学习 旺旺: QQ: 点击购买 夜鹰教程的忠实粉丝们,经过几周的努力,夜鹰教程网在线考试系统视频教程终于录制完毕了,本套教程重点讲解了在线考试系统的数据库设计和程序开发,主要实现的功能包括的试题的新增和维护,题库的管理,考试主体信息的管理和维护,用户的管理和维护,体型全面覆盖了单选题.多选题.判断题.填空题.主观题(例如:作文),,考试的同时还有倒计时功能.此考试系统实现了主观题人工阅卷,非主

基于SSM的在线考试系统

本系统功能非常完善,页面美观大方,技术新颖,选用主流数据库Mysql,表数量及结构适当,如果你需要做在线考试或者其它考试类系统,这个系统将非常有用. 其实,任何考试系统,无非试题不一样,所以如果你是做软件工程类考试,现在这个系统就是:如果你做语文知识竞赛类系统,将题目换为相应题目即可,其他系统类似操作.系统所有题目均是通过excel的形式批量导入,不需要一个个导入,支持单选.多选.判断三种题型. 功能: 用户管理模块:登录.注册.修改信息.安全退出.删除用户: 资源模块:查看资源.上传资源.下载