【发布时间】:2019-02-16 13:35:09
【问题描述】:
我想询问一些验证逻辑的正确做法。 任何关于有效输入的建议,可能需要、不需要或不关心。
案例 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 但我不确定这是否是唯一的方法。 谢谢大家!
【问题讨论】:
-
我不清楚你在问什么
-
你不是在寻找 if(validate && !string.IsNullOrEmpty()) - 这将确保如果 validate 为 false 它不会抛出错误,否则如果它是 true 它将检查 null 或空然后抛出错误?
-
不关心就是不验证
-
如果您需要具有三种状态的布尔值,请使用
bool?如果这不是您想要的,您需要针对您的问题做一些工作。 难以置信不清楚。 -
对不起。我已经更新了我的问题。希望这更清楚。
标签: c# boolean logic boolean-logic