C#二次开发ArcGIS查询功能 联系客服

发布时间 : 星期日 文章C#二次开发ArcGIS查询功能更新完毕开始阅读20adc4bcd0f34693daef5ef7ba0d4a7302766c08

[地理信息系统课程设计报告]

五、功能设计(流程图)

[地理信息系统课程设计报告]5 / 38

[地理信息系统课程设计报告]

六、程序运行界面介绍 1、用户登录界面

2、主程序界面

[地理信息系统课程设计报告]6 / 38

[地理信息系统课程设计报告]

3、属性查询界面

4、三角网及泰森多边形

[地理信息系统课程设计报告]7 / 38

[地理信息系统课程设计报告]

七、程序解析说明

1、用户登录界面程序解析说明

用户登录设计思路:

(1)用户输入用户名和密码,用户名不能为空,密码不能为空。

(2)密码在五分钟之内连续输错三次,用户名被锁定,30分钟后才能再次登录。 (3)若密码输错次数小于3次,则从最后一次输错时刻算起,五分钟之后用户登录错误次数归零。

(4)用户注册,数据库中检索此用户,若用户存在则提示用户名已存在,反之注册成功,需重新登录。

重点代码解析:

使用参数化查询避免注入漏洞攻击,用户信息存储在SQL Server数据库的T_User表中

//只用来执行查询结果较少的sql

publicstaticDataSet ExecuteDataSet(string sql, paramsSqlParameter[] parameters) {

using (SqlConnection conn = newSqlConnection(ConStr)) { conn.Open();

using (SqlCommand cmd = conn.CreateCommand()) {

cmd.CommandText = sql; cmd.Parameters.AddRange(parameters);

//SqlDataAdapter如同一个适配器,过渡桥梁的作用 SqlDataAdapter adapter = newSqlDataAdapter(cmd); DataSet dataset = newDataSet(); adapter.Fill(dataset); return dataset; } } }

当用户输错三次以上并且时间少于30分钟时不允许登陆,TimeSpan ts = DateTime.Now - date;用于存储间隔时间

if (errortimes >= 3) {

DateTime date = (DateTime)row[\]; TimeSpan ts = DateTime.Now - date; if (ts.TotalMinutes <= 30) {

MessageBox.Show(@\输入错误次数太多,用户已被锁定,请于30分钟后再登陆,剩余时间

[地理信息系统课程设计报告]8 / 38