【问题标题】:How do I easily check if all bools are true in asp.net c#?如何轻松检查 asp.net c# 中的所有布尔值是否为真?
【发布时间】:2011-10-19 21:41:06
【问题描述】:

我在每一页都有一个布尔列表。我正在编写一些验证代码,并在用户继续之前检查以确保每个布尔值都是正确的。检查所有布尔值是真还是假的最佳方法是什么?

我知道我可以硬编码每一个,但我想知道是否有更好的方法。

这里是布尔列表:

public bool posTitleBool;
public bool firstNameBool;
public bool lastNameBool;
public bool titleBool;
public bool emailBool;
public bool phoneBool;
public bool passwordBool;
public bool passwordValBool;
public bool companyNameBool;
public bool address1Bool;
public bool address2Bool;
public bool cityBool;
public bool stateBool;
public bool zipBool;
public bool industryBool;

感谢任何帮助。

谢谢!

【问题讨论】:

  • 使用类型为字段名称添加后缀是一种可怕的命名约定。我记得对一些应用程序进行了代码审查,该应用程序到处都使用这种恐怖,并且针对每个变量。 5分钟后我想呕吐。在 .NET 中有更好的命名约定。例如,布尔字段可以以 ishas 为前缀。

标签: c# asp.net


【解决方案1】:

选项:

  • 将它们全部放入一个集合并使用 LINQ(例如 conditions.All(x => x)
  • 简单的硬编码

    postTitleBool && firstNameBool && ...
    
  • 使用反射来获取和检查每个字段(这些真的是公共字段吗,顺便说一句?Ick)

您可能需要考虑在实现中使用某种映射,这样您就可以轻松操作一组值,然后再提供一个属性facade em> 获取或设置正确的映射值。两全其美。

【讨论】:

    猜你喜欢
    • 2021-03-12
    • 2021-11-07
    • 2013-09-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 2019-08-07
    相关资源
    最近更新 更多