【问题标题】:mvc default validation on numbersmvc对数字的默认验证
【发布时间】:2012-07-02 04:13:19
【问题描述】:

我的模型上有一个数字属性,我在我的剃刀视图上使用 editorfor。该字段不是强制性的,但默认验证使用户输入一个值,因为它不会接受数字的空字符串。我最终将模型属性更改为字符串,然后将我自己的自定义验证属性放在属性上。这不可能是得到我想要的东西的正确方法......可以吗??

[NonMandatoryDoubleValidation("Latitude")]
    public string Latitude { get; set; }

【问题讨论】:

    标签: c# asp.net-mvc razor editorfor


    【解决方案1】:

    您需要的是一个可以为空的双精度:double?。这样,您的变量将接受空字符串或空值以及双精度值。但是,每次与Latitude.HasValue 一起使用时都需要检查它是否为空,并使用Latitude.Value 来获取其值。

    【讨论】:

    • 谢谢 - 我认识的其他人已将我指向“数据注释扩展”
    【解决方案2】:

    一个可以为空的双精度怎么样:

    [Required]
    public double? Latitude { get; set; }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-29
      • 1970-01-01
      • 2015-01-01
      • 2017-08-23
      • 1970-01-01
      相关资源
      最近更新 更多