我想知道是否有办法配置Model值以接受空格作为有效条目。目前,当用户输入空格时,我收到错误,指示模型无效。
模型定义为 -
public class OrderItemCustomizationOption : BaseModel
{
[Required()]
[Column(Order = 2)]
public int OrderItemId { get; set; }
[Required()]
[Column(Order = 3)]
public int CustomizationOptionId { get; set; }
[Required()]
[Column(Order = 4)]
[StringLength(50)]
public string Value { get; set; }
public virtual OrderItem OrderItem { get; set; }
public virtual CustomizationOption CustomizationOption { get; set; }
}
我需要“值”字段以允许空格有效。
答案 0 :(得分:3)
RequiredAttribute
认为包含空格的字符串为空。您可以将AllowEmptyString
设置为true
(也可能ConvertEmptyStringToNulls
至false
),但这将消除此属性所代表的大部分内容。
通常,您可以使用MinLengthAttribute
来验证字符串和数组的长度(无论其内容如何):
[MinLength(1)]
[Column(Order = 4)]
[StringLength(50)]
public string Value { get; set; }
但是在这种情况下,您使用的是字符串特定的验证属性StringLength
,它有一个属性可用于指定所需的最小长度。然后可以更好地重写相同的代码:
[Column(Order = 4)]
[StringLength(50, MinimumLength = 1)]
public string Value { get; set; }