从ViewModel获取反馈

时间:2015-10-30 15:07:38

标签: c# asp.net-mvc validation viewmodel

我有一个简单的webform,它有两个接受数字值的字段。我想要做的是比较每个字段中的值,如果它们不有效,则向用户显示一条消息。

我目前正在我的viewmodel中使用ValidationAttribute这个方法和方法' isValid',如果值有效则返回true,如果不是,则返回false,然后是' 39; m不确定如何捕获真/假回报并利用它。这就是我到目前为止所拥有的:

public class AlertValuesCheck : ValidationAttribute
{
    private static double minAlert;
    private static double maxAlert;

    public override bool IsValid(object value)
    {
        if (maxAlert == 0)
            maxAlert = (double)value;
        else
            minAlert = (double)value;

        if (maxAlert < minAlert)
            return false;

        return true;
    }
}

...别处

[Display(Name = "Max Alert Boundary")]
[AlertValuesCheck]
[Required(ErrorMessage = "{0} is required!")]
public Nullable<double> MaxAlertBoundary { get; set; }

[Display(Name = "Min Alert Boundary")]
[AlertValuesCheck]
[Required(ErrorMessage = "{0} is required!")]
public Nullable<double> MinAlertBoundary { get; set; }

理想情况下,我希望显示一条消息,如[Required(ErrorMessage)]。这可能吗?如果是这样,我该怎么做?

1 个答案:

答案 0 :(得分:1)

ErrorMessage扩展ValidationAttribute时,您已拥有AlertValuesCheck属性。

所以你可以选择:

[AlertValuesCheck(ErrorMessage = "Your error message !!")]