我有一个验证方法,我调用它来验证表单上的字段。我想把它们放在一个if语句中检查它们是否返回true然后在我的else语句中将它们插入到我的数据库中。我已经声明了方法并声明了insert方法。如何编写if语句来检查所有验证方法是否都返回true?
我的方法验证调用:
formValidation(firstnameTextBox.Text);
formValidation(lastnameTextBox.Text);
formValidation(usernameTextBox.Text);
formValidation(passwordTextBox.Text);
formValidation(emailTextBox.Text);
formValidation(cellnumberTextBox.Text);
答案 0 :(得分:4)
只需使用AND运算符(&&
)
if(formValidation(firstnameTextBox.Text) &&
formValidation(lastnameTextBox.Text) &&
formValidation(usernameTextBox.Text) &&
formValidation(passwordTextBox.Text) &&
formValidation(emailTextBox.Text) &&
formValidation(cellnumberTextBox.Text))
{
}
作为mentioned in the comments,如果你想要运行所有方法(以显示每个字段的相关错误),无论如何,并且一旦遇到第一个错误就不会停止,你可以使用非短路AND,即&
运算符。
或者,您可以将文本框放入集合中并对该集合执行操作:
var fieldsToValidate = new TextBox[]{firstnameTextBox, lastnameTextBox, ...}
if(fieldsToValidate.All(field => formValidation(field.Text));