接受输入表单Blazor FluentValidation中的逗号和句点



我在html Blazor页面上有几个InputNumber字段。他们基本上追踪的是成千上万的收入。许多用户更愿意在这些表格中输入10000美元,而不是10000美元,甚至10000美元。我如何使用Blazor FluentValidation语法来实现这一点,当然要确保用户正确设置输入格式?

对于上下文,以下是上述表单的当前验证代码:

public class BusinessDataValidator : AbstractValidator<BusinessData>
{
public BusinessDataValidator()
{
RuleFor(p => p.BusinessResellingGross).NotEmpty().WithMessage("You must enter a number");
RuleFor(p => p.PavementTaxGross).NotEmpty().WithMessage("You must enter a number");
RuleFor(p => p.CustomWorkServicesGross).NotEmpty().WithMessage("You must enter a number");
}
}

我建议您为此创建自己的控件。InputNumber的源代码可以在这里查看

Input..控件的一个常见特性是,HTML输入以字符串形式出现,并且必须从字符串输入转换为绑定值类型,然后再转换回字符串值以进行显示。参见TryParseValueFromStringFormatValueAsString

您可以通过复制此代码并重写这两种方法来创建InputNumber(例如InputCurrency?(的副本,以便以您喜欢的任何方式解析金额。

相关内容

  • 没有找到相关文章

最新更新