如何在Azure DevOps迁移工具中实现条件字段映射?
Azure DevOps 自定义字段条件映射实现方案
针对你需要的字段A映射规则,直接使用MultiValueConditionalMapConfig即可实现,以下是正确的配置示例及说明:
配置代码示例
<FieldMap type="MultiValueConditionalMapConfig"> <SourceField name="Custom.FieldA" /> <TargetField name="Custom.FieldA" /> <Conditions> <!-- 规则1:源字段A非空时,直接映射原值 --> <Condition matchType="NotBlank"> <MappedValue value="$Value" /> </Condition> <!-- 规则2:源字段A为空时,取源字段B的值填充 --> <Condition matchType="Blank"> <MappedValue value="[Custom.FieldB]" /> </Condition> </Conditions> </FieldMap>
关键配置说明
- 字段引用名:
name属性必须填写字段的引用名(而非显示名),比如Custom.FieldA,可在Azure DevOps组织设置的「过程→字段」中查看对应字段的引用名。 - 条件顺序:
Conditions内的规则按从上到下顺序匹配,先判断非空场景再处理空值场景,确保逻辑符合预期。 - 变量含义:
$Value:代表源字段的当前取值,用于直接映射非空的场景。[Custom.FieldB]:通过方括号引用源项目中字段B的引用名,实现空值时的字段取值替换。
验证要点
- 确认源和目标项目的字段A都存在且引用名一致。
- 测试两种场景:源字段A为"ABC"时,目标字段A同步为"ABC";源字段A为空时,目标字段A自动填充源字段B的值。
内容的提问来源于stack exchange,提问作者sonicadv27
相关产品推荐
相关产品推荐

