[英]Wrapping multiple method calls into one if statement
我有一个验证方法,可以用来验证表单上的字段。 我想将它们放在if语句中检查它们是否返回true,然后在我的else语句中将它们插入我的数据库。 我已经声明了方法和声明了insert方法。 如何编写此if语句以检查所有验证方法是否返回true?
我的方法验证调用:
formValidation(firstnameTextBox.Text);
formValidation(lastnameTextBox.Text);
formValidation(usernameTextBox.Text);
formValidation(passwordTextBox.Text);
formValidation(emailTextBox.Text);
formValidation(cellnumberTextBox.Text);
只需使用AND运算符( &&
)
if(formValidation(firstnameTextBox.Text) &&
formValidation(lastnameTextBox.Text) &&
formValidation(usernameTextBox.Text) &&
formValidation(passwordTextBox.Text) &&
formValidation(emailTextBox.Text) &&
formValidation(cellnumberTextBox.Text))
{
}
如注释中所述 ,如果无论如何都希望运行所有方法(以显示每个字段的相关错误),并且在遇到第一个错误时也不要立即停止,则可以使用非短整数电路AND,即&
运算符。
或者,您可以将文本框放入集合中并对该集合进行操作:
var fieldsToValidate = new TextBox[]{firstnameTextBox, lastnameTextBox, ...}
if(fieldsToValidate.All(field => formValidation(field.Text));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.