繁体   English   中英

将多个方法调用包装为一个if语句

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM