看看我的代码有错么?高分。
//作用:执行返回值为OleDbDataReader数据集的SQL语句
//参数:SqlStr(string):Sql语句
//返回值:无
public void Exe(string SqlStr,out OleDbDataReader _Reader)
{
if(SqlStr != null || SqlStr!= " ")
{
Open();//打开数据库链接
OleDbCommand Db_Com = OleDbCommand(SqlStr,Db_Con); //Db_Con(数据库链接对象 OleDbConnection)
try
{
_Reader=Db_Com.ExecuteReader(CommandBehavior.CloseConnection);
}
catch(Exception ex)
{
_Reader=null;
Error.WriteErrorlog(ex.Message+ " 执行返回值为OleDbDataReader数据集的SQL语句。 ");
}
}
}
public void GetRead()
{
OleDbDataReader _Reader=null;
Exe( "Select * From News ",out _Reader);
}
运行出错:CS0177: 控制离开当前方法之前必须对 out 参数“_Reader”赋值
源错误:
行 106: //返回值:无
行 107:
行 108: public void Exe(string SqlStr,out OleDbDataReader _Reader)
行 109: {
行 110: if(SqlStr != null || SqlStr!= " ")
[解决办法]
if(SqlStr != null || SqlStr!= " ")前加入
_Reader=null;
[解决办法]
Exe( "Select * From News ",out _Reader);
???
[解决办法]
hanmlxiao(hanml)
nod
这么写还不如写return
[解决办法]
public void Exe(string SqlStr)
{
OleDbDataReader _Reader=null;
if(SqlStr != null || SqlStr!= " ")
{
Open();//打开数据库链接
OleDbCommand Db_Com = OleDbCommand(SqlStr,Db_Con); //Db_Con(数据库链接对象 OleDbConnection)
try
{
_Reader=Db_Com.ExecuteReader(CommandBehavior.CloseConnection);
}
catch(Exception ex)
{
_Reader=null;
Error.WriteErrorlog(ex.Message+ " 执行返回值为OleDbDataReader数据集的SQL语句。 ");
}
}
return(_Reader);
}
public void GetRead()
{
OleDbDataReader Reader=null;
Reader = Exe( "Select * From News ");
}