字符串长度数据通告MVC4不工作

本文关键字:MVC4 工作 数据 字符串 | 更新日期: 2023-09-27 18:27:38

我的模型类中有一个属性,如-

[StringLength(4)]        
        [DisplayName("Price")]
        public string Price{ get; set; }

正如你所看到的,我已经使用StringLength作为这个属性的约束,它的长度不应该超过4,但当我使用小数点(如-1.23)时它可以工作,但如果我不使用小数点,它需要超过4个字符串长度值。

我该如何解决这个问题。

还有一个问题:-我想对Hours(我的模型类中的属性)进行验证,即如果它是十进制的,则最多可以使用2位数字(一天中小时的最大值只能是24),如(4.20);如果它没有十进制,则最多最多可以使用两位数字,如(24)

我希望我能清除

字符串长度数据通告MVC4不工作

如果要存储十进制值,应该使用decimal类型,而不是字符串。您可以使用RangeAttribute 约束允许的最大值

[Range(0, 9999)] // First argument (0) represents minimum and second argument (9999) represents maximum value allowed for Price.
public decimal Price { get; set; }

对于与小时有关的其他问题,您可以使用数据类型TimeSpan,它只允许您存储时间值。您应该始终努力为要存储的数据使用正确的类型,以确保数据的完整性和易于维护。