繁体   English   中英

如何验证 c# 中可空属性的范围?

[英]How to validate range of a nullable property in c#?

我有一个 model ,其中一些属性可以为空。 他们也有一个范围属性。 但是模型状态没有检查范围属性验证。

这是我的财产:

    [Range(0, 9223372036854775807L)]
    public long? OfferId { get; set; }

首先,如果您期望您的 offer_id(顺便说一句,这在 c# 中不是一个好的命名约定 - 属性应该是帕斯卡大小写,例如 OfferId),那么类型应该很长? . 此外,如果该属性可以为空,则只有在不是 null 时才会检查 Range 注释。 总结一下,你所要做的就是:

[Range(0, 9223372036854775807L)]
public long? OfferId { get; set; }

10 会通过
-10 将失败
null 将通过

如果您希望 null 不通过,您还可以在 Range 1 旁边添加 [Required] 注释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM