所以我将电子邮件发送到我的验证类中的checkEmail方法的参数。
authentication.cs:
public int checkEmail(string email)
{
usersTableAdapters.UsersTableAdapter user = new usersTableAdapters.UsersTableAdapter();
users.UsersDataTable userDataTable = user.GetData();
user.checkEmail(email);
if (userDataTable.Rows == 0)
{
}
}
checkEmail是一个查询,它是“SELECT COUNT(电子邮件)AS电子邮件来自People WHERE(email =?)”
在checkEmail方法中,我试图检查它们是否是检索到的行,但是使用当前代码我得到了这个错误:
运算符'=='不能应用于'System.Data.DataRowCollection'和'int
类型的操作数有谁知道我做错了什么?
答案 0 :(得分:0)
答案 1 :(得分:0)
你忘记添加计数:
if (userDataTable.Rows.Count == 0)
{
}
答案 2 :(得分:0)
DataTable的Rows属性是DataRow对象的集合。将您的代码更改为:
if (userDataTable.Rows.Count == 0)
{
...
}
答案 3 :(得分:0)
您的问题是userDataTable.Rows
不是整数,它是行的集合。如果您需要行数,则必须使用Count
属性。
你最终会得到这个:
if(userDataTable.Rows.Count == 0)
{
...
}