范围验证器ErrorMessage中的当前值 - MVC 5

时间:2016-06-12 04:01:55

标签: asp.net-mvc

这可能是非常简单的事情,但我找不到任何能够做我想做的事情的例子。

我正在尝试在我的模型的rangeattribute验证器中显示当前值。

我正试图装饰我的财产......

to input:

我见过很多例子,其中{1}和{2}用于显示范围的最小值和最大值。但是我没有看到显示当前值的任何内容。

如果我输入一些非数字值,它会将默认消息显示为...

<Required>
<Display(Name:="Invoice(s) Amount")>
<Range(1, Decimal.MaxValue, ErrorMessage:="The value '{don't know what goes here}' is not valid for {0}.")>
<DataType(DataType.Currency)>
<DisplayFormat(ApplyFormatInEditMode:=False, DataFormatString:="{0:C2}")>
Public Property InvoiceAmount As Decimal

这就是为什么我认为应该在某种程度上为这个范围做这件事。

基本上我想要做的是当值是有效小数时显示相同类型的消息,但是超出允许的范围,所以它可能是......

The value 'asdf' is not valid for Invoice(s) Amount.

看起来应该很简单。

1 个答案:

答案 0 :(得分:1)

我不认为这可以使用RangeAttribute完成,但是创建一个继承自RangeAttribute的类,您可以覆盖默认行为并执行您喜欢的操作。