【问题标题】:Enterprise Library RangeValidator syntax企业库 RangeValidator 语法
【发布时间】:2010-01-08 11:02:49
【问题描述】:

我正在尝试使用企业库 RangeValidator 属性来验证十进制值是否大于零:

<RangeValidator(GetType(Decimal), "0.00", RangeBoundaryType.Exclusive, "1", RangeBoundaryType.Ignore, "MyMessage", "", Nothing, False, "", "")> _
    Public Property Holding() As Decimal
        Get
            Return _Holding
        End Get
        Set(ByVal value As Decimal)
            _Holding = value
        End Set
    End Property

但是我得到了编译错误

重载解析失败,因为没有可访问的“新”接受此数量的参数。

据我所知,我正确地使用了重载。如果我删除 messageTemplate 相关参数,它工作正常,但我希望能够指定自定义消息。

有没有人遇到过这个问题并克服了它?

【问题讨论】:

    标签: .net vb.net validation


    【解决方案1】:

    您需要将 messageTemplate 指定为命名参数的一部分:

    <RangeValidator(GetType(Decimal), "0.00", RangeBoundaryType.Inclusive, "0.00", RangeBoundaryType.Ignore, MessageTemplate := "Value must be greater than 0.")> _
    


    查看文档时,请确保您查看的是 RangeValidatorAttribute 类而不是 RangeValidator 类。

    【讨论】:

    • 我的错。 A 让 C# 主义滑进去。 "=" 应该是 ":="。
    猜你喜欢
    • 2011-11-06
    • 1970-01-01
    • 2012-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多