/// <inheritdoc />
        /// <remarks>Does nothing if <see cref="P:Microsoft.AspNetCore.Mvc.TagHelpers.ValidationSummaryTagHelper.ValidationSummary" /> is <see cref="F:Microsoft.AspNetCore.Mvc.Rendering.ValidationSummary.None" />.</remarks>
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            if (context == null)
            {
                throw new ArgumentNullException(nameof(context));
            }
            if (output == null)
            {
                throw new ArgumentNullException(nameof(output));
            }
            if (this.ValidationSummary == ValidationSummary.None)
            {
                return;
            }

            // تغیر توسط حسام محمودی برای سازگاری با AjaxForm
            //TagBuilder validationSummary = this.Generator.GenerateValidationSummary(this.ViewContext, this.ValidationSummary == ValidationSummary.ModelOnly, (string)null, (string)null, (object)null);
            TagBuilder validationSummary = ValidationSummaryTagHelperResources.GenerateValidationSummary(this.ViewContext, this.ValidationSummary == ValidationSummary.None, ValidationSummary == ValidationSummary.All, (string)null, (string)null, (object)null);

            if (validationSummary == null)
            {
                output.SuppressOutput();
            }
            else
            {
                output.MergeAttributes(validationSummary);
                if (!validationSummary.HasInnerHtml)
                {
                    return;
                }
                output.PostContent.AppendHtml((IHtmlContent)validationSummary.InnerHtml);
            }
        }
 /// <summary>
 /// The value of argument '{0}' ({1}) is invalid for Enum type '{2}'.
 /// </summary>
 internal static string FormatInvalidEnumArgument(object p0, object p1, object p2)
 {
     return(string.Format((IFormatProvider)CultureInfo.CurrentCulture, ValidationSummaryTagHelperResources.GetString("InvalidEnumArgument"), p0, p1, p2));
 }