【发布时间】:2010-09-07 22:39:16
【问题描述】:
如果我有一组数据库表(例如,在 Access 文件中)并且需要根据一个规则集验证该集合中的每个表,该规则集具有跨所有表的通用规则以及特定于一个或表的一个子集,有人可以推荐一个好的设计模式来研究吗?
具体来说,我想避免类似的代码:
void Main()
{
ValidateTable1();
ValidateTable2();
ValidateTable3();
}
private void ValidateTable1()
{
//Table1 validation code goes here
}
private void ValidateTable2()
{
//Table2 validation code goes here
}
private void ValidateTable3()
{
//Table3 validation code goes here
}
另外,我决定使用 log4net 来记录所有错误和警告,这样每个方法都可以声明为 void 并且不需要返回任何内容。这是一个好主意,还是创建某种ValidationException 来捕获所有异常并将它们存储在List<ValidationException> 中,然后再将它们全部打印出来会更好?
我确实找到了this,看起来它可能会起作用,但我希望能真正找到一些可以解决的代码示例。有什么建议?过去有没有人做过类似的事情?
在某些背景下,该程序将使用 C# 或 VB.NET 编写,并且表很可能存储在 Access 或 SQL Server CE 中。
【问题讨论】:
标签: design-patterns validation oop