上一篇文章分析了如何利用socket通讯,并用示例程序演示了通讯过程,那么今天我们就开始按照用户使用步骤逐渐完善CIM项目。
首先,我们打开CIM项目,熟悉一下项目目录。下图是项目列表,共有六个windows窗体。
注册、登录等功能需要进行数据库操作,因此,我们需要封装一个操作数据库的工具类,以便更方便调用。新建一个SqlHelper.cs类,然后对目录结构进行简单的修改,如下图:
接着我们在SqlHelper类中对数据库操作进行封装。将SqlHelper类中的方法全部写成静态,这样使用的时候直接用类名就可以调用,非常方便。我们根据CIM项目的实际需求进行方法的封装。因为现在还没有涉及到具体的业务逻辑,所以我们先封装两个通用的方法。
首先需要定义一个连接字符串:
public static string connectionString = "server=.;database=CIM;uid=sa;pwd=123456";
注意登录SQLServer数据库的用户名和密码,这里需要根据你的实际情况填写。
通用读取方法:
///
/// 根据sql语句读取数据
///
/// sql语句
/// sqldatareader
public static SqlDataReader ExecuteReader(string strSQL)
{
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(strSQL, connection);
try
{
connection.Open();
SqlDataReader myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return myReader;
}
catch (SqlException e)
{
throw e;
}
} 通用执行sql语句方法,用于增、删、改:
///
/// 执行sql插入、删除、修改语句
///
///
/// 影响记录的行数
public static int ExecuteSql(string SQLString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand(SQLString, connection))
{
try
{
connection.Open();
int rows = cmd.ExecuteNonQuery();
return rows;
}
catch (SqlException e)