Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 验证十进制精度_C#_Fluentvalidation - Fatal编程技术网

C# 验证十进制精度

C# 验证十进制精度,c#,fluentvalidation,C#,Fluentvalidation,嗨,我正在尝试计算,我正在使用fluent验证包确保遵守我的规则 验证正在启动并进入规则正常,但仍无法100%运行 SageOrderMixB sageOrder = new SageOrderMixB(); var validator = new MixValidator(); var results = validator.Validate(sageOrder); public class MixValidator : AbstractValidator<SageOrderMix

嗨,我正在尝试计算,我正在使用fluent验证包确保遵守我的规则

验证正在启动并进入规则正常,但仍无法100%运行

SageOrderMixB sageOrder = new  SageOrderMixB();
var validator = new MixValidator();
var results = validator.Validate(sageOrder);


public class MixValidator : AbstractValidator<SageOrderMixB>
{
    public MixValidator()
    {            
        RuleFor(x => x.WeightInTons).LessThanOrEqualTo(28).ScalePrecision(2, 2).WithMessage("Weight cannot be greater than 28 and must be a precison of 2"); ;

    }
}

对我来说,这是我在做这件事时的立场,确保你在设定价值之后拥有它

var结果=validator.Validate(sageOrder)


我认为,你需要使用正则表达式

[RegularExpression(@"^\d+(\.\d{2,2})$")]
在这里:

.ScalePrecision(2,2)

第一个
2
是小数位数。第二个
2
是数字位置的数量

0.45
[RegularExpression(@"^\d+(\.\d{2,2})$")]