无法将ModelBinder属性添加到输入模型的属性

时间:2010-01-01 17:11:58

标签: asp.net-mvc model-view-controller modelbinders

我想指定用于输入模型属性的模型绑定器。

public class SendEmailInput
{
    [Required, EmailAddress]
    public string From { get; set; }
    [Required]
    public string To { get; set; }
    [Required]
    public string Subject { get; set; }
    [Required, ModelBinder(typeof(RadEditorModelBinder))]
    public string Body { get; set; }
}

但是,ModelBinderAttribute无法应用于属性。这似乎很愚蠢,因为我可以将它应用于方法参数。我该怎么做才能解决这个限制?

2 个答案:

答案 0 :(得分:1)

您可能需要在此处实施自己的PropertyBinderMVC Property Binder

答案 1 :(得分:0)

在想要指定使用哪种型号活页夹时,您是否打算能够混合并重复使用模型粘合剂的现有逻辑?如果是这样,你可以在自定义绑定器本身中组合你的逻辑(我猜你的“RadEditorModelBinder”)。这样,您使用1个模型绑定器,但模型绑定器本身使用基于传入属性的不同技术。

您怎么看?这对您来说是个不错的选择吗?如果是,请参阅this post进一步讨论。