好的,我已经看到关于此的其他帖子,但没有真正明确回答我的问题。在哪里保持验证逻辑
在应用程序中应该验证逻辑的位置?
我有一个小应用程序,允许将新产品插入到应用程序数据库中。有不同领域的不同产品,即产品名称,订单号,说明等。新产品可以插入,现有产品可以更新。因此,在插入新产品时,必须验证所有字段,但是当现有产品正在更新时,只有正在更新的字段需要验证,即可能只是正在更新描述,以便只验证该字段。
我想到一个抽象类和两个具体类的全部和部分产品验证器,每个验证器都有自己的验证逻辑包含在类级别。
我有这样的感觉,但必须有更好的模式 - 任何建议?
请注意,验证不限于单场验证。验证有很多级别,第一次在字段验证之后是记录/对象验证规则,其中字段被认为是相互关联的。那么你很可能会遇到这样的情况:当你改变FieldA时,即使它没有被改变,FieldB也是无效的。一个(做作的)例子就是将某人的年龄改为低于法定驾驶限制。如果你还有一个领域给出他们的驾驶证号码,如果该字段有实际价值,现在将是完全不合逻辑的 – 2010-09-06 06:29:31