C#Windows窗体学生信息管理含选课

学生信息管理含选课

1. 系统架构
系统主要以C#实现数据库增删查改而设计,数据库选用sqlserver。主要功能如下:
1.实现管理员登录和注册。
2.实现管理员对学生信息的添加录入,录入时的学生学号即视为学生登录账号。
3.实现管理员对学生信息的更新修改。
4.实现管理员对学生信息查询
5.实现了管理员对学生信息的删除。
6.实现了管理员发布课程信息。
7.实现了学生登录。
8.实现了学生自我信息上传。
9.实现了学生选课,课程从老师发布的课程中选择。
C#Windows窗体学生信息管理含选课_第1张图片
2. 界面实现
登录采取选择性登录,学生账号由老师添加学生时,自动以学号注册。
C#Windows窗体学生信息管理含选课_第2张图片
下图为老师管理学生信息,此处对学生信息的添加只涉及账号学生,具体信息需要学生端登录自己完善。
C#Windows窗体学生信息管理含选课_第3张图片
3. 业务逻辑代码

  • 图片上传功能
private void button1_Click(object sender, EventArgs e)
 {
     OpenFileDialog openfile = new OpenFileDialog();
     openfile.Title = "请选择客户端longin的图片";
     openfile.Filter = "Login图片(*.jpg;*.bmp;*png)|*.jpeg;*.jpg;*.bmp;*.png|AllFiles(*.*)|*.*";
     if (DialogResult.OK == openfile.ShowDialog())
     {
         try
         {
             //读成二进制
             bytes = File.ReadAllBytes(openfile.FileName);
             //直接返这个存储到数据就行了cmd.Parameters.Add("@image", SqlDbType.Image).Value = bytes;
             //输出二进制 在这里把数据中取到的值放在这里byte[] bytes=(byte[])model.image;
             picBoxStuPhoto.Image = System.Drawing.Image.FromStream(new MemoryStream(bytes));
             picBoxStuPhoto.SizeMode = PictureBoxSizeMode.Zoom;
         }
         catch { }
     }
 }
  • 添加课程
private void button1_Click(object sender, EventArgs e)
{
     try
     {
         if (!ver.IsNumber(txt_score.Text))
         {
             MessageBox.Show("非法输入");
             return;
         }
         if (txt_test.Text.Trim().Equals("") || txt_teacher.Text.Trim().Equals("")
         || txt_time.Text.Trim().Equals("") || txt_place.Text.Trim().Equals("") || txt_score.Text.Trim().Equals("") || txt_score.Text.Trim().Equals(""))
         {
             MessageBox.Show("请输入信息");
             return;
         }
         else
         {
             //int Fcourse1 = int.Parse(a);
             string Funiversity2 = comboBox1.Text;
             string Fmajor3 = comboBox2.Text;
             string Fclass4 = txt_test.Text;
             string Fteacher5 = txt_teacher.Text;
             string Ftime6 = txt_time.Text;
             string Fplace7 = txt_place.Text;
             string Fscore8 = txt_score.Text;
             Courses stu = new Courses { Munversity2 = Funiversity2, Mmajor3 = Fmajor3, Mclass4 = Fclass4, Mteacher5 = Fteacher5, Mtime6 = Ftime6, Mplace7 = Fplace7, Mscore8 = Fscore8 };
             bool result = sm.Add(stu);
             if (result)
             {
                 MessageBox.Show("添加成功");
                 GetAll();
             }
             else
             {
                 MessageBox.Show("添加失败,课程编号重复!");
             }
             Clear();
         }
         
     }
     catch
     {
         MessageBox.Show("添加失败");
     }
     
 }
  • 定义验证非法数据类,进行需要的一些数据格式验证
public class Verification
 {
     public bool IsHandset(string str_handset)
     {
         return System.Text.RegularExpressions.Regex.
             IsMatch(str_handset, @"^[1]+[3,8,5]+\d{9}$");
     }
     public bool IsChinese(string str_chinese)
     {
         return System.Text.RegularExpressions.Regex.
             IsMatch(str_chinese, @"^[\u4e00-\u9fa5]{0,}$");
     }

     public bool IsPostalcode(string str_postalcode)
     {
         return System.Text.RegularExpressions.Regex.
             IsMatch(str_postalcode, @"^\d{6}$");
     }

     public bool IsCourseCode(string str_postalcode)
     {
         return System.Text.RegularExpressions.Regex.
             IsMatch(str_postalcode, @"^\d{7}$");
     }

     public bool IsStudentCode(string str_postalcode)
     {
         return System.Text.RegularExpressions.Regex.
             IsMatch(str_postalcode, @"^\d{4}$");
     }

      public bool IsNumber(string str_postalcode)
     {
         return System.Text.RegularExpressions.Regex.
             IsMatch(str_postalcode, @"^[0-9]*$");
     }
 }

具体功能展示可浏览视频:点我跳转

源码下载:点我获取

你可能感兴趣的:(C#windows窗体,c#,sqlserver)