为什么RadioButtonFor验证消息没有出现?

时间:2012-03-24 13:51:12

标签: asp.net-mvc-3 validation

视图提取

<td>@Html.RadioButtonFor(model => model.FocalNeurologicalSigns, 0) 0
</td>
<td>@Html.RadioButtonFor(model => model.FocalNeurologicalSigns, 1) 1
</td>
@Html.ValidationMessageFor(model => model.FocalNeurologicalSigns)

模型提取

[Required]
    public int FocalNeurologicalSigns { 
get { return _FocalNeurologicalSigns; } 
set { _FocalNeurologicalSigns = value; } 
}

验证适用于接受字符串输入的其他字段。在我的数据库中,即使没有选择任何内容,也会为int字段FocalNeurologicalSigns记录0。

我该怎么做才能使验证工作?

谢谢

1 个答案:

答案 0 :(得分:0)

类型int不可为空。因此,当您的单选按钮没有选择任何内容时,它会为FocalNeurologicalSigns指定一个默认值,即0。

将其设为可为空的int,它将按预期工作:

[Required]
public int? FocalNeurologicalSigns
{
    get { return _FocalNeurologicalSigns; }
    set { _FocalNeurologicalSigns = value; }
}