在前几节课中,我们已经了解winform是一种所见即所得的编程模式,其良好的所见即所得的编程界面,使我们能更快速的入门学习,我们在日常工作生活中,常用到的软件有:工业软件、操作系统软件、文字处理软件,图形图像软件,数据处理软件等等 。 那么我们今天要讲的就是其中的数据处理软件。
数据处理软件,就是对数据进行生产、加工、存储、显示的操作软件。当前很多的数据处理软件采取的是B/S的架构,也就是WEB的软件模式,基于近几年大数据,云计算的快速发展,使得很多的中小型企业,将数据处理放在云端,降低了软件的运营成本和维护成本,使数据处理更高效、数据存储更安全。而Winform 却依然深受众多中小企业青睐,当前国内的进销存、ERP , CRM、财务软件等有很多一部分采用的是winform的架构,之所以用winform , 是因为其有着以下优点:
(1):运行速度快。相比于WEB应用,其无需依赖基于云端的数据存储和读取。
(2):界面体验好。其界面相比于WEB应用更加的流畅,复杂的操作比WEB更加的方便。
(3):本地资源的操作更加方便。其依赖于本地的.net framework内核 ,使得操作本地系统的文件、接口(USB,串口) 、设备(芯片、PLC)、通信更加的便捷。
上述众多的篇幅我们在回顾winform的基础知识,以及对winform再次作一个较为全面认识。本节的内容我们将了解一下winform是怎么来读取数据的。我们的界面如下:
![f2da659a73a41ebcc14acfecd6844826.png](https://i-blog.csdnimg.cn/blog_migrate/87877016c45609b96e246721356d4b89.jpeg)
用户登录界面
我们需要操作的内容是,当用户输入账号和密码的时候,我们从数据库中检索当前输入的账号和密码是否正确。具体怎么建数据库,以及怎么设计表,在此篇幅中我将不作介绍,数据库我们采用的是Access库 ,当然也可以用mssql, mysql 等,数据库表如下:
![97ea2084e66314826317c08c0bdb4f7f.png](https://i-blog.csdnimg.cn/blog_migrate/0e01ee1d8b95e1cde3dcd731aa83b72a.jpeg)
用户信息数据库表
下一步,我们将点击登录界面中的登录按钮,从登录按钮事件中,来校验用户输入的信息是否正确。代码如下:
///
/// 登录按钮事件
///
///
///
private void button1_Click(object sender, EventArgs e)
{
string loginid = this.txtLoginID.Text.Trim();
string loginpass = this.txtLoginPass.Text.Trim();
if (loginid != "" && loginpass != "") //不为空
{
OleDbConnection con = new OleDbConnection(connstring);
con.Open();
string sql = "select * from UserInfo where LoginID='" + loginid + "' and LoginPass='" + loginpass + "'";
OleDbCommand cmd = new OleDbCommand(sql, con);
DataSet ds = new DataSet();
OleDbDataAdapter oda = new OleDbDataAdapter(cmd);
oda.Fill(ds);
DataTable dt = ds != null && ds.Tables.Count > 0 ? ds.Tables[0] : null;
if (dt != null && dt.Rows.Count > 0)
MessageBox.Show("账号和密码正确 !");
else
MessageBox.Show("账号和密码错误 !");
con.Close();
}
else //如果为空的话
MessageBox.Show("请输入账号和密码 !");
}
在上述代码中,我们用到了数据库连接对象,通过查询数据后,将数据填充进DataSet数据集中,通过数据集是否存在数据来判断用户输入的账号和密码是否正确,程序执行的结果如下:
![f4838828f679ccd082c9863ad606fd9a.png](https://i-blog.csdnimg.cn/blog_migrate/b720129908a3b7a5e5c5daa4c02f7144.jpeg)
程序执行的结果
代码非常的简单,当然我们在学习完winform后 ,我们需要优化代码,将代码中的通用的事件、属性封装成对象, 并且需要考虑sql注入这种场景存在的可能性 ,初学者朋友建议更多的关注于面向对象的知识点,以及面向对象编程的概念。
最后,在学习winform中遇到问题,或者想学习winform编程的朋友可私信我。