【问题标题】:is there a design pattern for complex aspnet UI validation?是否有用于复杂 aspnet UI 验证的设计模式?
【发布时间】:2023-03-09 16:10:01
【问题描述】:

例如,假设我有一个具有 100 个属性的域对象。在我的 UI 中,我需要对样式进行复杂的验证:

  • 如果 A = 1,则显示控件 B、C、D。B 是必需的,C 不是必需的,如果填充了 D,则必须小于 30。
  • 如果 A = 2,则显示控件 B、D、E。B 不是必需的,D 是必需的,但没有限制,E 不是必需的。
  • 如果 A = 3,则显示控件 B、E、F。B 是必需的,并且必须大于 10,E 是必需的,F 不是必需的。
  • 如果 B = 3 且 F = 5,则显示控制 G,但仅当 A = 3 时。

你可以在这里看到我的问题。属性之间的关系非常复杂,验证的变化取决于早期的值以及与其他值的组合。

过去人们是如何建模和处理的?验证不需要很频繁,但基于 config/xml 的解决方案可能是最好的。

【问题讨论】:

标签: asp.net validation


【解决方案1】:

您可以将这个巨大的域对象投影到仅包含所需属性子集的较小对象中,并根据它们所描述的场景命名它们。如果您愿意,它正在创建某种 ViewModel。

对于 A = "X" 或 B = "Y" 等的每种情况,都必须有一个特定的用例。如果要拆分,可以为每个 ViewModel 定义验证规则。这些 ViewModel 还可以包含控件的可见/隐藏设置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多