我正在制作登录脚本,无法让Convert.ToInt32()
为我工作。
错误:错误
' System.Convert.ToInt32(对象)'是一种方法'但用得像 '类型'
片段:
con.Open();
string mysql; // generate an sql insert query for the database
mysql = "SELECT * FROM [Users] UserName='" + tbUser.Text + "'";
OleDbCommand CheckUser = new OleDbCommand(mysql, con);
int temp = new Convert.ToInt32(CheckUser.ExecuteScalar().ToString());
感谢任何帮助。
答案 0 :(得分:6)
丢失new
关键字:
int temp = Convert.ToInt32(CheckUser.ExecuteScalar().ToString());
您正在看警告,因为您正在尝试创建静态方法的实例。通常,您会创建非静态类型的实例。
答案 1 :(得分:0)
更改int temp = new Convert.ToInt32(CheckUser.ExecuteScalar().ToString());
到int temp = Convert.ToInt32(CheckUser.ExecuteScalar().ToString());
答案 2 :(得分:0)
试试这个:
Int32 count = (Int32) CheckUser.ExecuteScalar();
答案 3 :(得分:0)
您可以使用Select 1
as:
con.Open();
string mysql; // generate an sql insert query for the database
mysql = "SELECT 1 FROM [Users] UserName='" + tbUser.Text + "'";
OleDbCommand CheckUser = new OleDbCommand(mysql, con);
int temp = Convert.ToInt32(CheckUser.ExecuteScalar());
SqlCommand.ExecuteScalar()会返回object
,因此如果值匹配,则为1,否则为0。