我想问一下验证逻辑的一些正确做法。 关于有效输入的任何建议,可能是必需的,不需要的或无关紧要的。
情况1:需要一个文本字段。
bool required = true;
if(!String.IsNullOrEmpty("123") != required)
{
//Error
}
情况2:不需要文本字段。
bool required = false;
if(!String.IsNullOrEmpty("123") != required)
{
//Error
}
情况3:一个文本字段是可选的
我要实现的是使用一个常规功能进行验证。
//this flag will change based on different input fields
bool required = true;
if(required != null && (!String.IsNullOrEmpty(input) != required))
{
//Error
}
我曾经考虑过null,但是我不确定这是否是唯一的方法。 谢谢大家!
答案 0 :(得分:1)
我认为您正在寻找这样的东西:
bool? mandatory = null; // true, false or null for "I don't care"
if(mandatory.HasValue && string.IsNullOrEmpty(x) == mandatory.Value)
{
//Error
}