C# 机房重构中的一些常见问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tigaobansongjiahuan8/article/details/85038586

前言
这几天又收获了很多东西,真的是时间没有白费,功夫不负有心人,慢慢的进行积累总结,会有很多的收获, 下面和大家分享一下!
收获
【1】
在这里插入图片描述
解决方法:
D层在调用SQLHelper中的方法时,用了“带参数的查询SQL语句”查询方法,但是在D层没有传参,如下图:
在这里插入图片描述
【2】问题:
在这里插入图片描述
解决方案:
在这里插入图片描述
加上一下操作,在D层中没有实现接口层,实现一下就好了:
在这里插入图片描述
【3】将数据库中查询结果的表头用中文显示出来:
选中“dataGridView1”控件,右上角有个小三角,点击之后,按照下图编辑即可
在这里插入图片描述
【4】限制文本框只能输入数字,代码如下:
private void txtcardno_KeyPress_1(object sender, KeyPressEventArgs e)
{
if(e.KeyChar!=’\b’ && !char.IsDigit(e.KeyChar))
{
e.Handled = true;
MessageBox.Show(“请输入数字!”);
}
}
【5】
在这里插入图片描述
问题分析:
一般都会是D层有问题,SQL语句的问题:①可能是查表查错了②可能是拼写和数据库中不完全一样,大概只有这个方面
解决方案:
重新检查一下自己的D层,按照这两方面重新进行修改即可
【6】注册窗体中的问题:
在这里插入图片描述
问题分析:
数据库中的日期范围和winform中的日期范围不同
解决方案:
在注册的代码段添加上一个关于Date的内容即可,将当前时间赋给实体层,即:student_info.Date = DateTime.Now;
【7】System.Data.SqlClient.SqlException:参数化查询,没有参数UserID:(注册窗体)
在这里插入图片描述
问题分析:
数据库中有UserID,但是U层没有,所以U层中没有值可以插到数据库中
解决方案:
之前在登录窗体的代码中,定义了全局变量(静态的),现在在注册窗体的代码段加上有关UserID的内容,将它传给实体层即可,即:student_info.Userid = UILogin.userid;
总结
这一段时间以来,发现的问题还真是不少,自己也收获了很多,慢慢的开始对这些东西系有了了解,深入的研究,知道了发生这些bug的原因,知道了问题所在,虽然是花了不少的时间,但是收获了很多,也还是很开心的,后续更新,请大家继续关注!

猜你喜欢

转载自blog.csdn.net/tigaobansongjiahuan8/article/details/85038586