public bool line
{
get
{
if (iflogin == false)
{
return false;
}
else
{
OleDbConnection conn = new OleDbConnection(Program.connstr);
String sql = "select * from mydata where username='" + myname + "' and password='" + mypassword + "'";
OleDbCommand comm = new OleDbCommand(sql, conn);
conn.Open;
OleDbDataReader rd = comm.ExecuteReader;
if (rd.Read)
{
return true;
}
else
{
return false;
} }
}
}
{
get
{
if (iflogin == false)
{
return false;
}
else
{
OleDbConnection conn = new OleDbConnection(Program.connstr);
String sql = "select * from mydata where username='" + myname + "' and password='" + mypassword + "'";
OleDbCommand comm = new OleDbCommand(sql, conn);
conn.Open;
OleDbDataReader rd = comm.ExecuteReader;
if (rd.Read)
{
return true;
}
else
{
return false;
} }
}
}
2、OleDbDataReader conn 没有关闭
无责任猜测楼主以前是学 VB 的?conn.Open -> conn.Open()
comm.ExecuteReader -> comm.ExecuteReader()
rd.Read -> rd.Read()如果你所说的错误是指程序逻辑,那么抱歉,下次再看... -_-
改成
OleDbDataReader rd = comm.ExecuteReader();
改成
conn.Open();if (rd.Read)
改成
if (rd.Read())
//
// 这不函数,这是属性
// 因为 第一line后面没有括号,第二它有 get 访问器
没人说 public bool line 是函数啊 -_-conn.Open(IDbConnection.Open()) 是不是函数?
comm.ExecuteReader(IDbCommand.ExecuteReader()) 是不是函数?
rd.Read(IDataReader.Read()) 是不是函数?
// comm.ExecuteReader(IDbCommand.ExecuteReader())
// rd.Read(IDataReader.Read())这样一写可能又有人有话说了,搞得好像IDbConnection.Open() 变成了 conn.Open() 的实参了,寒自己一个先 -_- 外面那对括号只表示解释,不表示方法,干脆修改一下得了:conn.Open() - 实现 IDbConnection.Open(),是不是函数?
comm.ExecuteReader() - 实现 IDbCommand.ExecuteReader(),是不是函数?
rd.Read() - 实现 IDataReader.Read(),是不是函数?
在生成时提示如下错误:
错误1 只有 assignment、call、increment、decrement 和 new 对象表达式可用作语句
错误2 无法将方法组“ExecuteReader”转换为非委托类型“System.Data.OleDb.OleDbDataReader”。要调用该方法吗?
错误3 无法将方法组“Read”转换为非委托类型“bool”。要调用该方法吗?