diff --git a/Common/Validation/WorkItem/ValidateWorkItemTypes.cs b/Common/Validation/WorkItem/ValidateWorkItemTypes.cs index b114071..7455d5d 100644 --- a/Common/Validation/WorkItem/ValidateWorkItemTypes.cs +++ b/Common/Validation/WorkItem/ValidateWorkItemTypes.cs @@ -214,7 +214,8 @@ public bool CompareWorkItemType(IValidationContext context, string workItemType, { if (!context.ValidatedFields.Contains(field) && !context.SkippedFields.Contains(field)) { - if (!targetFields.Contains(field)) + var replacementFieldExists = context.Config.FieldReplacements.TryGetValue(field, out var replacementField); + if (!replacementFieldExists && !targetFields.Contains(field) || replacementFieldExists && replacementField.FieldReferenceName == null) { matches = false; context.SkippedFields.Add(field); @@ -222,7 +223,10 @@ public bool CompareWorkItemType(IValidationContext context, string workItemType, } else { - matches &= CompareField(context, context.SourceFields[field], context.TargetFields[field]); + if(!replacementFieldExists) + matches &= CompareField(context, context.SourceFields[field], context.TargetFields[field]); + else + matches &= CompareField(context, context.SourceFields[field], context.TargetFields[replacementField.FieldReferenceName]); } } }