нестандартная модель переплета со сложным типом MVC 3 - PullRequest
3 голосов
/ 10 марта 2011

У меня есть следующий ViewModel, и я хотел бы создать пользовательский связыватель для связывания подклассов (LogOnModel, ChangePasswordModel).

public class LogOnViewModel
{
    public string NextStep { get; set; }
    public string PreviousStep { get; set; }
    public string ReturnUrl { get; set; }
    public bool MustChangePassword { get; set; }
    public bool MustAgreeNewPrivacyStatement { get; set; }
    public LogOnModel logOnModel { get; set; }
    public ChangePasswordModel changePasswordModel { get; set; }
}

Мне удалось создать пользовательский связыватель (наследовать от DefaultModelBinder), но никогдабыл в состоянии получить полную валидированную модель (заполненную ModelState) обратно в мой контроллер.Это работает нормально для простого типа (string, bool, ....), но немного сложнее со сложным типом (подкласс).

Является ли MVC 3 Futures ответом на мой вопрос, или кто-то смог переопределить DefaultModelbinderсвязать подклассы?

Спасибо, Мишель

1 Ответ

0 голосов
/ 17 марта 2011

Вам также нужно будет создать собственные связующие для моделей LogOnModel и ChangePasswordModel; ваш пользовательский механизм связывания моделей не знает автоматически, как связывать ваши сложные типы.

...