文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

基于C#实现宿舍管理系统

2024-04-02 19:55

关注

前言

本次项目主要是因为我们的大作业要求要求,因为网上C#的资源不太多,因此我根据网上的资料制作了以下的小项目。

一、项目创建

首先通过创建C#的Windows窗体应用程序,名字可以自行设置,框架可以选用默认的。

二、主页面设计

这是我的项目主页面,主要包括4个Label类,3个Button类,2个radioButton1,1个pictureBox1。主要的设计界面就如图所示。命名和图片大家可以自行的设置,通过对组件的Text属性进行设置,radioButton具有一个Checked属性,可以控制默认的多选框。(例如我的在用户)

三、主页面代码

主页面代码主要包括验证登录信息,通过与SQL查询来验证用户信息,以及打开对象的对话框。

1.登录按钮

首先我们写一个Login的登录方法用来判断登录,随后会跳转到别的窗口(会在下一次的教程中编写)。代码如下。

 public void Login() {
            
            //用户
            if (radioButton1.Checked == true) {
                DataBase DB = new DataBase();
                string sql = $"select * from [User] where id='{textBox1.Text}' and password='{textBox2.Text}'" ;

                IDataReader dc = DB.read(sql);
                if (dc.Read())
                {
                    Data.UID = dc["id"].ToString();
                    Data.UName = dc["name"].ToString();


                    MessageBox.Show("登录成功");
                    User1 user = new User1();
                    this.Hide();
                    user.ShowDialog();
                    this.Show();
         
                }
                else 
                {
                    MessageBox.Show("登陆失败");
                
                }
                DB.Close();
               
             
            }
            //管理员
            if (radioButton2.Checked == true) {
                DataBase DB = new DataBase();
                string sql = $"select * from [Admin] where id='{textBox1.Text}' and password='{textBox2.Text}'";
                IDataReader dc = DB.read(sql);
                if (dc.Read())
                {
                    MessageBox.Show("登录成功");
                    Admin1 admin = new Admin1();
                    this.Hide();
                    admin.ShowDialog();
                    this.Show();

                }
                else
                {
                    MessageBox.Show("登陆失败");

                }
                DB.Close();



            }
           
        }

随后双击登录button,输入以下代码,用以判断空值。

private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text != "" && textBox2.Text != "")
            {
                Login();
            }
            else
            {
                MessageBox.Show("输入有空,请重新输入");
            }
        }

2.退出按钮

这个按钮就没啥难点直接上代码了,双击退出Button。

private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

3.注册按钮

用以跳转的按钮,也是双击注册Button,同样的跳转的窗口将在下次教程中讲解。

private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

4.SQL配置

随后我们的代码里还要新建一个DataBase.cs用以创建SQL连接。代码如下。

using System.Data.SqlClient;

namespace HomeWork
{
    
    class DataBase
    {
        SqlConnection sc;
        public SqlConnection connect() {
      
            string str= @"Data Source=.;Initial Catalog=DormitoryDB;integrated security=true"; //位置(这个地方根据自己的需要修改)
            sc = new SqlConnection(str); //连接
            sc.Open(); //打开
            return sc; //返回对象
        }

        public SqlCommand command(string sql) {
            SqlCommand cmd = new SqlCommand(sql, connect());
            return cmd;
        }

        public int Execute(string sql) //更新 
        {
            return command(sql).ExecuteNonQuery();
        }
        public SqlDataReader read(string sql) //读取
        {
            return command(sql).ExecuteReader();
        }

        public void Close() {
            sc.Close();
            
        }
    }
}

(1)SQL打开

代码都有了但是SQL配置还未完成。首先你得安装SQL数据库打开

(2)SQL登录

我用的是默认Windows身份验证,也可以用管理员登录。

(3)新建数据库

登录后新建一个数据库,如下。

(3)新建数据表

之后根据自己的需要新建表格。我将我的数据表展示一下。(可能不太严谨因为我的水平也有限)

5.主页总体代码

还需要一个Data类用以保存用户的ID等信息,便于后面的开发。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HomeWork
{
    class Data
    {
        public static string UID = "", UName = "";  //用户名和ID
    }
}

using System;
using System.Data;
using System.Windows.Forms;

namespace HomeWork
{
    public partial class Index : Form
    {
        public Index()
        {
            InitializeComponent();
        }

        private void textBox2_TextChanged(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text != "" && textBox2.Text != "")
            {
                Login();
            }
            else
            {
                MessageBox.Show("输入有空,请重新输入");
            }
        }

        //登录方法
        public void Login() {
            
            //用户
            if (radioButton1.Checked == true) {
                DataBase DB = new DataBase();
                string sql = $"select * from [User] where id='{textBox1.Text}' and password='{textBox2.Text}'" ;

                IDataReader dc = DB.read(sql);
                if (dc.Read())
                {
                    Data.UID = dc["id"].ToString();
                    Data.UName = dc["name"].ToString();


                    MessageBox.Show("登录成功");
                    User1 user = new User1();
                    this.Hide();
                    user.ShowDialog();
                    this.Show();
         
                }
                else 
                {
                    MessageBox.Show("登陆失败");
                
                }
                DB.Close();
               
             
            }
            //管理员
            if (radioButton2.Checked == true) {
                DataBase DB = new DataBase();
                string sql = $"select * from [Admin] where id='{textBox1.Text}' and password='{textBox2.Text}'";
                IDataReader dc = DB.read(sql);
                if (dc.Read())
                {
                    MessageBox.Show("登录成功");
                    Admin1 admin = new Admin1();
                    this.Hide();
                    admin.ShowDialog();
                    this.Show();

                }
                else
                {
                    MessageBox.Show("登陆失败");

                }
                DB.Close();



            }
           
        }


        private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            register register = new register();
            register.ShowDialog();

        }
    }
}

以上就是基于C#实现宿舍管理系统的详细内容,更多关于C#宿舍管理系统的资料请关注编程网其它相关文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯