我正在尝试将我的代码转换为同步,但是当我运行它时 我在我的一个变量中得到了“ System.Threading.Tasks.Task`1 [System.Int32]”值,而不是预期的ans
我已经阅读了与该主题相同的大多数问题,但是没有一个问题可以帮助我解决问题 我尝试正确使用等待,但没有帮助
public async Task<int> userloginAsync(string name,string pass)
{
using (SqlConnection con = new SqlConnection(@"/////:P//////"))
{
using (SqlCommand cmd = new SqlCommand("UserLoginPro"))
{
cmd.Connection = con;
cmd.CommandText = "SELECT count(id) FROM user_table where name =@name and password =@password; ";
cmd.Parameters.AddWithValue("@name", name);
cmd.Parameters.AddWithValue("@password", pass);
await con.OpenAsync();
var ans1 = await cmd.ExecuteScalarAsync();
var ans = ans1.ToString();
con.Close();
int res = Convert.ToInt32(ans);
con.Close();
return res;
}
}
}
如果输入(用户名和密码)匹配,应查询mssql 如果有回报1 如果不是0 (数据库中有唯一的用户名,因此只能是一个)