根据ASP.NET MVC4中的另一个属性值应用AllowHtmlAttribute

时间:2014-09-24 14:54:25

标签: c# asp.net asp.net-mvc asp.net-mvc-4

请考虑以下事项:

public enum HtmlFieldType {
    PlainText,
    RichText,
    Number,
    DateTime,
    Radio,
    Checkbox,
    Unknown
}

public class MySimpleModel {
    public HtmlFieldType FieldType { get; set; }
    public bool IsMandatory { get; set; }
    public string[] Values { get; set; }
}

我想要动态地根据public string[] Values的值在FieldType属性上设置属性。像DataType,IsRequired和AllowHtml之类的东西。具体来说,如果FieldType设置为RichText,则Values应使用AllowHtmlAttribute。

我已经使用验证器提供程序以及关联的元数据提供程序进行了探索。在这两种情况下,如何询问模型的另一个属性并不明显。我在正确的道路上吗?这让我困扰了几个小时,所以任何帮助都会非常感激!

编辑:我也尝试过实现IValidatableObject,但我理解MVC在触发Validate函数之前处理属性验证。如果我的Values属性包含HTML,它将在点击Validate之前停止执行。

0 个答案:

没有答案