public IDataReader CheckUser(string strUserXml)
{
StringBuilder strUsers = new StringBuilder();
IDataReader reader = null;
Database db = null;
DbCommand dbc = null; try
{
db = DatabaseFactory.CreateDatabase();
dbc = db.GetStoredProcCommand("Proc_Web_T_CheckUsersExists");
dbc.Parameters.Add(DataAccess.DataAccess.AddParamInput("@users", strUserXml, SqlDbType.NVarChar)); reader = db.ExecuteReader(dbc);
}
catch (Exception ex)
{
reader = null;
throw ex;
}
return reader;
}
最好是可以逐行逐句的解释下,以及他有什么作用,没有他会有什么影响,先谢谢了。菜鸟,多多照顾
{
StringBuilder strUsers = new StringBuilder(); //StringBuilder,这个好,拼字符串的,效率高。
IDataReader reader = null; //定义DataReader,执行查询数据库功能(定义和声明有什么区别记不清楚了)
Database db = null; //定义数据库类
DbCommand dbc = null; //定义数据库命令类 try
{
db = DatabaseFactory.CreateDatabase(); //实例化数据库类(工厂模式)
dbc = db.GetStoredProcCommand("Proc_Web_T_CheckUsersExists"); //执行的命令是一个存储过程
dbc.Parameters.Add(DataAccess.DataAccess.AddParamInput("@users", strUserXml, SqlDbType.NVarChar)); //存储过程中的变量 (where name=@users) reader = db.ExecuteReader(dbc); //执行查询语句,返回一个reader,用它的read()方法可以一条条读取查询到的记录。
}
/***
*处理异常,比如无法链接数据库,无法执行语句等都会抛出异常,抓住直接丢掉,然后将reader重置
*/
catch (Exception ex)
{
reader = null;
throw ex;
}
return reader; //返回reader
}
一年没碰过了,希望大牛纠正