基本信息
源码名称:用户管理(C#增删改查)源码
源码大小:0.19M
文件格式:.zip
开发语言:C#
更新时间:2025-01-13
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍
这个实例实现了用户管理,并包含了异常的处理。用户文件保存在本地运行文件中。

1、用户管理

//增加用户
private void User_Add(object sender, EventArgs e)
{
    string fullPath = Path.Combine(currentDirectory, user_FileName);
    int Level;
    bool trans_level_result = int.TryParse(Convert.ToString(Level_Box.SelectedItem), out Level);
    int Keep_Time;
    bool trans_keeptime_result = int.TryParse(Convert.ToString(KeepTime_Box.Text), out Keep_Time);
    if ((Name_Box.Text != "") & (Password_Box.Text != "") & trans_level_result & trans_keeptime_result)
    {
        //MessageBox.Show("可以添加");
        User User_Temp = new User(Name_Box.Text, Password_Box.Text, Level, Keep_Time);
        bool name_check_result = true;
        foreach (var User in User_List)
        {
            if (User.Name == User_Temp.Name)
            {
                MessageBox.Show("请重新命名");
                name_check_result = false;
                break;
            }
        }

        if (name_check_result == true)
        {
            User_List.Add(User_Temp);
            User_Table.DataSource = null;
            User_Table.DataSource = User_List;
            File.Delete(fullPath);
            using (StreamWriter writer = new StreamWriter(fullPath))
            {
                foreach (var User in User_List)
                {
                    // 将Person对象序列化为JSON字符串
                    string jsonString = JsonSerializer.Serialize(User);
                    // 将JSON字符串写入文件,每个对象占一行(或根据需要添加分隔符)
                    writer.WriteLine(jsonString);
                }
            }
            MessageBox.Show("添加用户成功");

        }

    }
    else
    {
        MessageBox.Show("请完善信息");
    }
    SharedData.User_List = User_List;
}


//删除用户
private void User_Dele(object sender, EventArgs e)
{
    string fullPath = Path.Combine(currentDirectory, user_FileName);
    if (User_Table.SelectedRows != null)
    {
        foreach (DataGridViewRow row in User_Table.SelectedRows)
        {
            // 获取当前行的索引(注意:在删除行时,索引可能会发生变化)
            int rowIndex = row.Index;
            // 从DataTable中删除对应的行
            User_List.RemoveAt(rowIndex);
        }
        User_Table.DataSource = null;
        User_Table.DataSource = User_List;
        File.Delete(fullPath);
        using (StreamWriter writer = new StreamWriter(fullPath))
        {
            foreach (var User in User_List)
            {
                // 将Person对象序列化为JSON字符串
                string jsonString = JsonSerializer.Serialize(User);
                // 将JSON字符串写入文件,每个对象占一行(或根据需要添加分隔符)
                writer.WriteLine(jsonString);
            }
        }
    }
    else
    {
        MessageBox.Show("请选中要删除的行");
    }
    SharedData.User_List = User_List;
}

private void Open_Login_Form(object sender, EventArgs e)
{
    Login_Form dialog = new Login_Form();
    DialogResult result = dialog.ShowDialog();
    if (result == DialogResult.OK)
    {
        CurrentUserName.Text = SharedData.currentUserName;
    }
}

private void Logout(object sender, EventArgs e)
{
    SharedData.currentUserName = "";
    SharedData.currentUserLevel = 0;
    CurrentUserName.Text = SharedData.currentUserName;
}

2、登陆用户

private void Try_Login(object sender, EventArgs e)
{
    bool check_result = false;
    bool name_check_result = false;
    if ((Convert.ToString(User_Select_Box.SelectedItem) != null) & (Password_Box.Text != "") )
    {
        foreach (var User in SharedData.User_List)
        {
            if ((Convert.ToString(User_Select_Box.SelectedItem)) == User.Name)
            {
                name_check_result = true;
                if (Password_Box.Text == User.Password)
                {
                    check_result = true;
                    SharedData.currentUserName = User.Name;
                    SharedData.currentUserLevel = User.Level;
                    MessageBox.Show("登陆成功");
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                    break;
                }
                else
                {
                    MessageBox.Show("密码不正确");
                    break;
                }
                
            }
        }

        if (name_check_result == false)
        {
            MessageBox.Show("用户不存在");
        }

    }
    else
    {
        MessageBox.Show("请完善信息");
    }
}