C#简易电影记录管理系统:开发一[用户登录] – SilverSky(SoFlash) – 博客园

开篇

在现实程序开发中, 我们开发的最多,最广泛的还是一些各类型的数据管理系统,当然不同的系统有功能上的差异,数据库也不一样,但最主要,最常见的功能无外乎对数据的基本操作(增删改查).该系统开发系列记录了整个简易电影记录管理系统的开发过程,绝大部分功能模块设计与实现都附上了截图,大部分代码也都包含注释,十分适合C#新手学习和掌握.

 

本期概述

第一期我们一起来学习下如何使用Visual Studio 2008从新建项目到实现一个用户登录功能.

 

那么我们赶紧开始吧~~~~

1.新建项目

 

2.新建Winform(Windows 窗体应用程序) 如图

 

3.接下来新建好了Winform主窗体,并命名为 FrmLogin.cs.

界面设计:首先我们从左边的工具栏里拖出一个Button按钮,用于后期输入账号和密码后点击登录使用(如图所示).

 

4. 接下来是label框 用于提示需要在文本框Textbox内输入的内容.

 

5. 文本框Textbox 用于输入帐号和密码.

 

6.大体界面设计好了,我们需要给控件们赋予name属性名称(如下)

窗体name: FrmLogin.cs(之前已经命名过)    用户名文本框name:txtName    密码文本框name:txtPwd   登录按钮name:btnLogin

 

然后再添加一个登录成功后 的跳转窗体 name: FrmManager.cs

 

界面设计好了, 我们把需要创建一个数据库用于存取用户的账户和密码信息.

1.新建一个数据库

 

2.将数据库名设置为 Movie, 再点OK 就新建好了.

 

3.数据库创建好了,我们便开始新建数据表.

 

4.设置 列名(字段名) 数据类型 以及 是否允许该字段为空

列名分别为  用户ID: MId   用户名: MUserName  用户密码: MUserPwd

 

5.设置MId 的主键

 

6.设置好主键后, 将下面列属性中的是否自我增长标识(Identity Specification)也设置一下.

 

7. 将 Identity Specification 中的 Is Identity 设置为 Yes(目的是让每插入1行新数据 ID数自动+1).

 

8. 设好了以后保存数据表,表名为MovieAccount.

 

9.数据表建完以后,我们需要手动插入用户登录系统所需要的用户名和密码.

 

10.手动插入用户名和密码 如图所示(当然用户名和密码可以随意写,只要命名有意义且方便好记即可).

 

这样,数据库便建好了.

 

接下来设置登录窗体

1.由于是针对数据库的操作,首先我们需要添加一个系统用于连接数据库的配置文件 App.config.

右键项目名- 添加 – 新建项

 

然后选择 应用程序配置文件, 名称使用默认的 App.config 即可.

 

2.添加完配置文件后,我们需要在里面添加 连接字符串名称 add name=”str” 和 数据库连接字符串内容 connectionString=”…..”.

<span style="color: blue;">&lt;?</span><span style="color: #a31515;">xml </span><span style="color: red;">version</span><span style="color: blue;">=</span>"<span style="color: blue;">1.0</span>" <span style="color: red;">encoding</span><span style="color: blue;">=</span>"<span style="color: blue;">utf-8</span>" <span style="color: blue;">?&gt;</span>

<configuration>

<connectionStrings>

<add name=strconnectionString=Data Source = .\SQLExpress2008; Initial Catalog=Movie;Integrated Security=True/>

</connectionStrings>

</configuration>

设置完成 App.config 连接配置文件后,我们需要在登录窗体代码中来对其进行连接;这里我们需要用到ConfigurationManager(它提供了对客户端应用程序配置文件的访问).系统默认是不使用其命名空间的,因此我们需要对其进行解析;在解析前,需要添加一个对System.configuration程序集的引用.

图一

找到解决方案资源管理器下的 “引用”, 右键 “添加引用”.

 

图二

找到.net 项, 选择System.configuration,然后点确定.

 

图三

当你看到引用下面出现了System.configuration,便说明引用已添加完成.

 

图四

添加完引用后,我们在代码中添加一条用于连接配置文件的连接字符串.

<span style="color: green;">       //用于连接配置文件App.config</span>

string connStr = ConfigurationManager.ConnectionStrings[“str”].ConnectionString;

 

添加位置 如下图

 

然后将鼠标移到ConfigurationManager单击右键,这时候出现一个解析选项;

选using System.Configuration (使用系统下的Configuration命名空间).

 

当然,由于登录窗体需要使用一些数据库操作指令的命名空间,例如SqlConnection等,系统默认是不使用的,所以同样我们需要自己解析一下.

同样右键SqlConnection解析,选择 using System.Data.SqlClient 或者System.Data.SqlClient.SqlConnection 都行.

 

完整代码如下

<span style="color: blue;">using </span>System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Configuration;

using System.Data.SqlClient;

/*******************************************************

** 作者: SoFlash – 博客园 http://www.cnblogs.com/longwu

** 描述: FrmLogin.cs 用于 用户登录窗体的 实现

******************************************************/

namespace 电影记录管理系统

{

public partial class FrmLogin : Form

{

public FrmLogin()

{

InitializeComponent();

}

//首先 设置 连接到配置文件组建 App.config

//当然 这里的 ConfigurationManager 系统是默认不使用其命名空间的 因此需要解析

string connStr = ConfigurationManager.ConnectionStrings[“str”].ConnectionString;

private void btnLogin_Click(object sender, EventArgs e)

{

//使用SqlConnection 来连接数据库

using (SqlConnection conn = new SqlConnection(connStr))

{

//创建sql 查询语句

string sql = “select MUserPwd from MovieAccount where MUserName ='” + txtName.Text + “‘”;

//创建 SqlCommand 执行指令

using (SqlCommand cmd = new SqlCommand(sql, conn))

{

//打开数据库连接

conn.Open();

//使用 SqlDataReader 来 读取数据库

using (SqlDataReader sdr = cmd.ExecuteReader())

{

//SqlDataReader 在数据库中为 从第1条数据开始 一条一条往下读

if (sdr.Read()) //如果读取账户成功(文本框中的用户名在数据库中存在)

{

//则将第1条 密码 赋给 字符串pwd ,并且依次往后读取 所有的密码

//Trim()方法为移除字符串前后的空白

string pwd = sdr.GetString(0).Trim();

//如果 文本框中输入的密码 ==数据库中的密码

if (pwd == txtPwd.Text)

{

//说明在该账户下 密码正确, 系统登录成功

MessageBox.Show(“系统登录成功,正在跳转主页面…”);

FrmManager manager = new FrmManager();

manager.Show();

this.Hide();

}

else

{

//否则密码错误 再次输入密码

MessageBox.Show(“密码错误!请再次输入!”);

//并自动将当前密码 清空

txtPwd.Text = “”;

}

}

else

{

//如果读取账户数据失败, 则用户名不存在

MessageBox.Show(“用户名不存在,请重新出入!”);

//并自动清空账户名

txtName.Text = “”;

}

}

}

}

}

}

}

运行效果展示

图一

图二

 

图三

 

登陆成功后 跳转到管理窗体界面

这样一个电影记录管理系统的登录模块就做好了.

 

附上源代码 (包含数据库文件)

MovieRecordManagementSystem01.zip

相关推荐 [点此查看目录]

来源URL:http://www.cnblogs.com/longwu/archive/2011/09/10/2172793.html