ASP.NET学生成绩管理系统

一、实现功能

1.  用户注册登录
2.  两种身份:教师和学生
3.  学生能够查看自己的成绩
4.  教师可以对班级,对学生的信息进行查看
5.  教师可以增、减、查、改等学生信息

二、简单代码

1.登陆页面(内容判断不在内)

//教师学生判断登陆
                string user = this.txtUserName.Text;
                string pwd = FormsAuthentication.HashPasswordForStoringInConfigFile(this.txtPwd.Text, "MD5");
                string sql = "select a.*,b.RoleName,b.PowerIds from tb_UserInfo a join tb_Role b on a.RoleId=b.Id where a.LoginName=@LoginName and a.LoginPwd=@LoginPwd";
                SqlParameter[] parameters = 
                {
                   new SqlParameter("@LoginName",user),
                   new SqlParameter("@LoginPwd",pwd)
                };
                SqlDataReader sdr = SqlHelper.ExecuteReader(connStr, CommandType.Text, sql, parameters);
                if (sdr.Read())
                {
                    Session["UserName"] = sdr["UserName"].ToString();
                    Session["UserId"] = sdr["Id"].ToString();
                    Session["RoleName"] = sdr["RoleName"].ToString();
                    sdr.Close();
                    Response.Redirect("Main.html");
                }
                else
                {
                    sdr.Close();
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "loginError", "alert('用户或密码错误!');", true);
                }

2.班级添加(内容判断不在内)

 string sql = "insert into tb_ClassInfo values(@ClassName,@Remark)";
                SqlParameter[] parameters = 
                {
                   new SqlParameter("@ClassName",txtClassName.Text.Trim()),
                   new SqlParameter("@Remark",Server.HtmlEncode(txtRemark.Text.Trim()))
                };
                bool result = false;
                result = SqlHelper.ExecuteNonQuery(connStr, CommandType.Text, sql, parameters) > 0 ? true : false;
                if (result)
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "addOk", "alert('添加成功!')", true);
                }
                else
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "addError", "alert('添加失败!')", true);
                }

3.删除学生页面(内容判断不在内)

string chkSql = "select ClassId from tb_StuInfo where ClassId=" + id;
                object obj = SqlHelper.ExecuteScalar(connStr, CommandType.Text, chkSql);
                if (obj != null)
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "havestu", "alert('存在该班级的学生,不能删除该班级!')", true);
                    return;
                }

                string sql = "delete from tb_ClassInfo where Id=" + id;
                bool result = false;
                result = SqlHelper.ExecuteNonQuery(connStr, CommandType.Text, sql) > 0 ? true : false;
                if (result)
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "delOk", "alert('删除成功!')", true);
                    BindgvClass(gvClassManage.PageSize, gvClassManage.PageIndex);
                }
                else
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "delError", "alert('删除失败!')", true);
                }

4.添加学生页面(内容判断不在内)

if (!CheckStuId("add"))
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "addcheckerror", "alert('该学号已存在!')", true);
                    return;
                }


                string sql = "insert into tb_StuInfo values(@StuNum,@StuPwd,@StuName,@Birthday,@Sex,@ClassId,@StartTime)";
                SqlParameter[] parameters = 
                {
                   new SqlParameter("@StuNum",txtstuId.Text.Trim()),
                   new SqlParameter("@StuPwd",txtstuPwd.Text.Trim()),
                   new SqlParameter("@StuName",txtstuName.Text.Trim()),
                   new SqlParameter("@Birthday",txtBirth.Value),
                   new SqlParameter("@Sex",radMan.Checked),
                   new SqlParameter("@ClassId",Convert.ToInt32(ddlClass.SelectedValue)),
                   new SqlParameter("@StartTime",txtJionTime.Value)
                };
                bool result = false;
                result = SqlHelper.ExecuteNonQuery(connStr, CommandType.Text, sql, parameters) > 0 ? true : false;
                if (result)
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "addOk", "alert('添加成功!')", true);
                }
                else
                {
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "addError", "alert('添加失败!')", true);
                }

4.学生成绩查询页面(内容判断不在内)

  string sql0 = "select COUNT(a.Id) from tb_Score a join tb_StuInfo b on a.StuId=b.Id join tb_ClassInfo c on c.Id= b.ClassId join tb_Subject d on d.Id=a.SubjectId join tb_Schedule e on a.ScheduleId=e.Id where b.StuNum like @StuNum and b.StuName like @StuName and c.ClassName like @ClassName and d.SubjectName like @SubjectName and e.ScheduleName like @ScheduleName";
            AspNetPager1.AlwaysShow = true;
            AspNetPager1.PageSize = pagesize;

            string sql = "select top " + pagesize + "  a.*,b.StuNum,b.StuName,c.ClassName,d.SubjectName,e.ScheduleName from tb_Score a join tb_StuInfo b on a.StuId=b.Id join tb_ClassInfo c on c.Id= b.ClassId join tb_Subject d on d.Id=a.SubjectId join tb_Schedule e on a.ScheduleId=e.Id where b.StuNum like @StuNum and b.StuName like @StuName and c.ClassName like @ClassName and d.SubjectName like @SubjectName and e.ScheduleName like @ScheduleName and a.Id not in(select top " + (pageindex - 1) * pagesize + " Id from tb_Score)";
            SqlParameter[] parameters =
                {                          
                    new SqlParameter("@StuNum","%"+txtStuNum.Text.Trim()+"%"),   
                    new SqlParameter("@StuName","%"+txtName.Text.Trim()+"%"),
                    new SqlParameter("@ClassName","%"+txtClass.Text.Trim()+"%"),
                    new SqlParameter("@SubjectName","%"+txtSubject.Text.Trim()+"%"),
                    new SqlParameter("@ScheduleName","%"+txtSchedule.Text.Trim()+"%")
                };
            AspNetPager1.RecordCount = Convert.ToInt32(SqlHelper.ExecuteScalar(connStr, CommandType.Text, sql0, parameters));
            DataSet ds = SqlHelper.ExecuteDataset(connStr, CommandType.Text, sql, parameters);
            gvStudentScore.DataSource = ds;
            gvStudentScore.DataBind();

三、结尾

因为特别的原因有很多都没有展示,我也希望给才接触的asp.net的人有所帮助~~~感谢大家的阅读和支持,能给你们带来帮助也是我成长的一步~需要带数据库完整的直接加我(不白给)1076396021
直接跳转

目的:通过调研目前教学管理系统中的成绩管理子系统,了解成绩管理子系统的业务流程;通过分析比较,结合用户对成绩管理子系统的改进意见与实现情况,运用面向对象思想方法,设计和实现一个满足功能和性能,并有所创新的成绩管理子系统,以提高成绩管理的自动化、友好性等。本系统基于.NET平台和SQL Server数据库,通过毕业设计,可以使学生对.NET结构下开发B/S模式的分布式三层数据库系统有一个全面的了解。 本系统从功能上划分可分为以下几大模块:功能模块管理,组权限管理,学生信息管理,课程信息管理,学生成绩管理,授课信息管理,学生信息查询,学生成绩统计等几大模块。以下将对各子模块进行说明。 功能模块管理:将系统功能模块保存到数据库中以便于动态地进行不同用户组权限的分配等操作。本模块包括功能模块的添加,删除,修改等。 组权限管理:对用户进行分组,并将权限设置到不同的用户组。 学生信息管理模块:输入学生基本信息,并可以对学生信息进行添加、查询、修改、删除。还可以关键字查询并从数据库里调出的学生基本信息.输出学生基本信息,学号、班号、姓名查询的信息结果。 课程信息管理:设置课程号,课程名,先修课等课程信息。 成绩信息管理模块:输入成绩信息,并可以对成绩信息进行添加、查询、修改、删除。还可以用关键字查询并调出数据库里的学生基本成绩信息的修改、删除等。输出查询的学生成绩信息。 授课信息管理:对教师授课信息的调度,安排等信息的管理。 学生信息查询:本模块是可对学生成绩进行查询,可按学号,姓名,年龄,所在院系,入学年份等不同条件独立查询或进行模糊查询。 学生成绩统计:对学生成绩总分,平均分等进行统计。 系统管理员后台用户名为 admin 密码为 www.mycodes.net 普通用户(测试用例)用户名为:user01,密码:111111 DB下为Sql数据库,附加即可
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值