【C#】机房重构 — 删除用户

#前言

昨天晚上做梦,梦见我一直在敲删除用户的窗体,而且最后成功实现了,真好~ 然后今天就美梦成真了,真好~(当然这次也少不了大兵和娉哲的帮忙)

#正文

还记得小编的前一篇文章实现了更新的功能,这一篇文章则是实现了删除的功能。 虽然真的很简单的,但是作为增删改查四个功能中的一个,还是值得一总结的。 (今天小编用了蓝色和白色的色调喔)

##界面设计

第一次机房的时候,可能大家都记得,还有一个更新的功能,但是,这次发现不太需要这个功能了,所以果断删除了。 只有三个功能:添加(添加用户) 、删除用户、退出。

这里写图片描述

##敲黑板式重点

实现过程: 1.在User_Info 中查找用户,显示在表格中。 2.选中并删除需要删除的一行数据

##代码实现

DAL层:

 public DataTable selectUser(Entity.User_Info userinfo)
        {
            SQLHelper sqlhelper = new SQLHelper();
            SqlParameter[] sqlParams = { new SqlParameter("@Level", userinfo.Level)};
            string sql = "select * from User_Info where [Level] =@Level";
            DataTable table = sqlhelper.ExecuteQuery(sql, sqlParams, CommandType.Text);
            return table;
        }
public DataTable deleteUser(Entity.User_Info userinfo)
        {
            SQLHelper sqlhelper = new SQLHelper();
            SqlParameter[] sqlParams = { new SqlParameter ("@userID",userinfo.userID)
                                       };
            string sql = "delete from User_Info where userID =@userID";
           
            DataTable table = sqlhelper.ExecuteQuery(sql, sqlParams, CommandType.Text);
            return table;
        }

BLL层:

 public class deleteBLL
    {
        /// <summary>
        /// 删除用户
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public Boolean  deleteUser(Entity.User_Info user)
        {
            
            Factory.deleteFactory fact = new deleteFactory();
            IDAL.deleteIDAL idal = fact.CreateUser();
            DataTable table = idal.deleteUser(user);
            bool flag;
            if (table.Rows.Count == 0)
            {
                flag = false;
            }

            else
            {
                flag = true;
            }
            return flag; //返回flag

        }


        /// <summary>
        /// 查找用户
        /// </summary>
        public DataTable selectUser (Entity.User_Info user)
        {
            Factory.deleteFactory fact = new Factory.deleteFactory();
            IDAL.deleteIDAL idal = fact.CreateUser();
            DataTable table = idal.selectUser (user);
            return table;
        }
    }

UI层:

public partial class deleteUser : Form
    {
        public deleteUser()
        {
            InitializeComponent();
        }

        private void deleteUser_Load(object sender, EventArgs e)
        {
            Level.Items.Add("一般用户");
            Level.Items.Add("管理员");
            Level.Items.Add("操作员");
        }

        private void btnOK_Click(object sender, EventArgs e)
        {
            addNum addnum = new addNum();
            addnum.ShowDialog();
        }

        private void btnDelete_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count ==0)
            {
                MessageBox.Show("请选中一行");
            }
            else
            {
                Entity.User_Info user = new Entity.User_Info();//实例化实体层

                user.userID = Convert.ToInt32(dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[0].Value.ToString());//表格中的数据给实体层
                user.Level = Level.Text;
                Facade.deleteFacade facade = new Facade.deleteFacade();//实例化外观层
                DataTable table = facade.selectUser(user);
                  bool flag = facade.deleteUser(user);
                //bool table1 = facade.deleteUser(user);

                if (flag ==false)
                {
                    MessageBox.Show("删除成功!");
                    Showuser();

                }
                else
                {
                    MessageBox.Show("删除失败!");
                }
            }
        }

        public void Showuser() //封装一个方法
        {
            Entity.User_Info user = new Entity.User_Info();
            Facade.deleteFacade facade = new Facade.deleteFacade();
            user.Level = Level.Text.Trim();
            DataTable  table = facade.selectUser(user);
            dataGridView1.DataSource = table;
        }

        private void Level_SelectedIndexChanged(object sender, EventArgs e)
        {
            Showuser();
           
            
               
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            System.Environment.Exit(0);
        }
    }
}

#后记

1.对于七层的理解:层与层之间的联系,最重要的就是传参的应用,如果哪一层没有传参,那么其他层便不能接收,也就会操作失败。 举个例子,比如你托人传一个小纸条,来表达爱意,但是其中一个人给弄丢了,那么表白失败了,劝你还是直接一点去表达吧~
评论 43
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

草莓味少女vv

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值