【发布时间】:2018-01-15 12:50:48
【问题描述】:
我有一个 ASP.NET Core 2 项目,我在其中使用注释来验证货币字段,如下所示:
public class Record {
public const string CurrencyRegex = @"^[$]?\d+[,.]?\d?\d? ?[€$]?$";
[RegularExpression(Record.CurrencyRegex, ErrorMessage = "Invalid currency format")]
public string Budget { get; set; }
问题是小数点分隔符 ([,.]?\d?\d?) 并不完美。我需要表达对当前语境文化的理解。如果是英国/美国,则小数分隔符应验证为.,但在此处的 id,例如 FR 文化,小数应视为 ,
如果可能,我如何使用“上下文相关常量”作为RegularExpression 属性值?
【问题讨论】:
标签: c# validation asp.net-core asp.net-core-2.0 globalization