是否有复杂的aspnet UI验证的设计模式?

时间:2010-06-20 20:24:41

标签: asp.net validation

举个例子,假设我有一个包含100个属性的域对象。在我的UI中,我需要复杂的样式验证:

  • 如果A = 1,则显示对照B,C,D。如果填充了B,则需要B,C不是,D不需要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时才显示。

你可以在这里看到我的问题。属性之间的关系非常复杂,验证更改取决于先前的值并与其他值组合。

过去人们如何对此进行建模和处理?验证不需要经常进行,但基于配置/ xml的解决方案可能是最好的。

1 个答案:

答案 0 :(得分:1)

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

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