设计模式:.NET C#,我必须检查 100+ 合规性
Design Pattern : .NET C# , I have to check 100+ compliance
设计模式:.NET,我必须检查 100+ 合规性。
对于每个合规性,我必须为其创建一个单独的 class。
哪种 solution/Design 构建应用程序的最佳模式可以一次性检查所有合规性,并将每个合规性相互联系起来?
由于尚未设计,所以我请求输入以进行更好的设计。
要求:对所有银行进行合规检查。
每家银行在批准贷款之前都有不同的规则集,很少有规则集是基于政府规范的。
设想 :
1. 联邦政府通用规则集。
2. 每个州都有自己的规则集。
3. 每个银行都有自己的规则集。
在项目类名中类似于
Class BankOfAmerica
{
//all rules
}
Class Bank2
{
//all rules
}
Class State1
{
//all rules
}
Class State2
{
//all rules
}
Class Country
{
//all rules
}
现在对于单个用户,我想检查针对包括不同州和国家的多家银行的贷款资格。
看起来复合模式就是答案。您应该从 100 多个合规性中提取合规性接口:
public interface ICompliance
{
bool IsCompliant {get;}
}
并实施复合合规性:
public class ConfjunctionCompositeCompliance
{
IList<ICompliance> compliancies = new List<ICompliance>();
public Add(ICompliance compl) {...}
public bool IsCompliant
{
get { return compliancies.Aggregate(true, (c, a) => c &= a.IsCompliant); }
}
}
(当然你可以优化合取和析取布尔检查)
设计模式:.NET,我必须检查 100+ 合规性。 对于每个合规性,我必须为其创建一个单独的 class。 哪种 solution/Design 构建应用程序的最佳模式可以一次性检查所有合规性,并将每个合规性相互联系起来?
由于尚未设计,所以我请求输入以进行更好的设计。 要求:对所有银行进行合规检查。 每家银行在批准贷款之前都有不同的规则集,很少有规则集是基于政府规范的。 设想 : 1. 联邦政府通用规则集。 2. 每个州都有自己的规则集。 3. 每个银行都有自己的规则集。
在项目类名中类似于
Class BankOfAmerica
{
//all rules
}
Class Bank2
{
//all rules
}
Class State1
{
//all rules
}
Class State2
{
//all rules
}
Class Country
{
//all rules
}
现在对于单个用户,我想检查针对包括不同州和国家的多家银行的贷款资格。
看起来复合模式就是答案。您应该从 100 多个合规性中提取合规性接口:
public interface ICompliance
{
bool IsCompliant {get;}
}
并实施复合合规性:
public class ConfjunctionCompositeCompliance
{
IList<ICompliance> compliancies = new List<ICompliance>();
public Add(ICompliance compl) {...}
public bool IsCompliant
{
get { return compliancies.Aggregate(true, (c, a) => c &= a.IsCompliant); }
}
}
(当然你可以优化合取和析取布尔检查)