コード例 #1
0
        /// <summary>
        /// Merge all error found in a validation dictionary to the current application message
        /// </summary>
        /// <param name="executionResult">instance of IApplicationMessage</param>
        /// <param name="validationDictionary">instance of IValidationDictionary</param>
        /// <param name="againstMessageCategory">add error message into this category</param>
        /// <returns>instance of application message in order to chain to other operations</returns>
        public static ExecutionResult Merge(this ExecutionResult executionResult, IValidationDictionary validationDictionary, MessageCategory againstMessageCategory = MessageCategory.BrokenBusinessRule)
        {
            if (executionResult == null) return null;

            if (validationDictionary != null)
            {

                validationDictionary
                    .Each(item => executionResult.Add(againstMessageCategory, new MessageGroup(item.Value.ToList())));
            }

            return executionResult;
        }