Как создать валидационное сообщение для полей в бритве MVC с помощью ViewModel

Я хочу создать проверку поля в моем виде бритвы.
Это довольно просто, потому что MVC автоматически сгенерирует для нас validationMessageFor.

Как и то, что я прочитал, нам не разрешено делать проверку в классе модели, вместо этого мы используем класс viewModel. Теперь я немного запутался в том, как разместить аннотации [Required] в моей viewModel.

Моя проблема

Вот как будет работать реальная проверка
Посмотреть

<tr>
            <td>Name</td>
            <td colspan="2">
                @Html.EditorFor(model => model.reg.registerNm, new { @class = "TextBoxAsLabel" })
                @Html.ValidationMessageFor(model => model.reg.registerNm)
            </td>

        </tr>

ViewModel

public class reg
{  
   [Required]
   public string registerNm {get;set;}
}

Это будет работать, но в моем ViewModel структура отличается, потому что мне нужно использовать данные из многих таблиц

Моя ViewModel

    public class RegisterInfoPA
{    

    public register reg { get; set; }

    public personalInfo pinfo { get; set; }

    public IEnumerable<maritalInfo> minfo { get; set; }

    public IEnumerable<eduInfo> edInfo { get; set; }

    public IEnumerable<monthlyIncome> monthlyIncomeInfo { get; set; }

    public refundBank refundBK { get; set; }

    public IEnumerable<accType> accType { get; set; }  
}

поэтому всякий раз, когда я назначаю аннотации [Требуется], проверка не будет работать.
Как я могу сделать сообщение проверки для моей ViewModel, потому что моя viewModel использует

государственный реестр reg { get; задавать; }

которые представляют так много полей, которые я хочу, но для целей проверки я хочу, чтобы только одно или два определенных поля были проверены. Как я могу этого достичь?

Спасибо.

0 ответов

Другие вопросы по тегам