我遇到了复杂数据验证的挑战。在SSIS加载期间,我必须检查不同元素的组合。我无法将它们硬编码到C#中,因为它们会发生很大的变化。所以我想到我将它们存储在xml文件中,脚本组件将在运行时选择这些规则。
我有一个真正的噩梦来设置xml和c#。
传入数据按时间分组,每个元素属于某个区域。每个区域(总共有8个区域)都有一系列不同的基础元素组合。
将有来自源数据的元素列表:
我需要针对主列表进行检查:
组合1
如果有单个项目代表Region,则它必须是第一个列表之一:
区域1 = BlueA
区域2 = BlackV
区域3 = PinkA
组合2。
1区
a)BlueA,BlueO
b)BlueA,BlueRc)PurpleV,BlueA,BlueR
地区2
a)BlackV,BlackF
b)BlackR,BlackL,BlackW
每个区域将有多个组合,并且只能有一个a)或b)或c)可以为真。 例如,区域1-如果源中存在单个元素,则它必须是BlueA,或者如果存在多个表示区域1的元素,则它可以是来自a)或b)或c)的一个组合。
问题1 如何设计一个可以容纳这些组合的xml文件?
问题2 我应该使用c#中的哪些元素来保存它们。字典,列表,等等?
你能成为国王并建议如何处理这个问题吗?