Правильно полученное подтверждение показывает сообщение об ошибке, если пользователь нажимает кнопку «Отправить» в самом низу страницы, не загрузив действительный файл. Проблема заключается в том, что когда пользователь успешно загружает действительный файл, мне нужно немедленно удалить это сообщение об ошибке, как это происходит для TextBoxFor.
У меня есть:
[RegularExpression(@"([a-zA-Z0-9\s_\\.\-:])+(.pdf|.jpg|.png|.rtf|.doc|.docx)$", ErrorMessage = "Files must be pdf, jpg, png, rtf, doc, or docx.")]
[DataType(DataType.Upload)]
[Display(Name = "Survey (Required)")]
[Required(ErrorMessage = "Please select file.")]
public HttpPostedFileBase Survey { get; set; }
и
@Html.LabelFor(m => Model.Survey, new { @class = "control-label" })
@Html.TextBoxFor(m => Model.Survey, new { @class = "form-control", @type = "file", Name = "Survey" })
@Html.ValidationMessageFor(m => Model.Survey, "", new { @class = "text-danger" })