【问题标题】:custom model binder with complex type MVC 3具有复杂类型 MVC 3 的自定义模型绑定器
【发布时间】:2011-03-10 04:26:59
【问题描述】:

我有以下 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 继承),但始终无法将完整的 VALIDATED 模型(填充了 ModelState)返回到我的控制器中。它适用于简单类型(字符串、布尔值、....),但对于复杂类型(子类)有点复杂。

MVC 3 Futures 是我的问题的答案,还是有人能够覆盖 DefaultModelbinder 来绑定子类?

谢谢, 米歇尔

【问题讨论】:

  • 米歇尔,我不太明白你在问什么。你能改写一下这个问题吗?
  • 我想创建一个自定义活页夹来绑定我的 LogOnViewModel(带有子类)。我无法绑定子类。

标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-viewmodel


【解决方案1】:

您还必须为LogOnModelChangePasswordModel 创建自定义模型绑定器;您的自定义模型绑定器不会自动知道如何绑定您的复杂类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 2014-12-29
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多