У меня есть небольшая проблема с динамической формой. Модели не известны до времени выполнения, поэтому я не могу использовать @html.ValidationMessageFor(m=>m.foo)
.
Я думал, что мог бы использовать @html.ValidationMessage()
вместо этого, однако эта форма показывает сообщение проверки после запроса на получение? до отправки формы.
if (field.Tag == "input")
{
<div class="m-form--group m-form--group-inset">
<label for="@(prop.Value.Name ?? prop.Key.Name)">@(prop.Value.Name ?? prop.Key.Name)</label>
@Html.TextBox(prop.Key.Name, prop.Key.GetValue(Model), new RouteValueDictionary(field.Attributes))
@Html.ValidationMessage(prop.Key.Name, "Required", new { @class="field-validation-error" })
</div>
}
и я получаю prop
от
var props = typeof(Ljmu.Web.UI.ViewModels.Components.Contact.ContactFormViewModel)
.GetProperties(BindingFlags.Public | BindingFlags.Instance)
.Where(x => x.GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.DisplayAttribute), true)
.Cast<System.ComponentModel.DataAnnotations.DisplayAttribute>().FirstOrDefault() != null)