【问题标题】:c# Fluent Validation RuleForc# Fluent Validation RuleFor
【发布时间】:2021-11-22 18:21:15
【问题描述】:

如果可能的话,我正在尝试进入使用 Fluent Validation 的验证器类 (MediatR)。像这样的:

When(x=> x.Count != Null && x.Count >= 0 , () => 
{
    RuleFor(x=> x.Offset).Matches(isNumber errCode.somethingwrong);    
    RuleFor(x=> x.Offset).NotNull())); 
}

CountOffset 上设置手表时(即使我知道它是什么处理程序)看不到它。任何线索如何查看价值? 我问的原因是这似乎是何时条件,而程序属于何时块。无论哪种方式都想知道这些变量在断点时是否可以查看。 .Net core 3.1 vs2019

【问题讨论】:

    标签: c# .net fluent fluentvalidation-2.0


    【解决方案1】:

    不完全确定您需要什么,但是如果您无法从调试器中捕获它,那么可以使用一个小技巧来登录控制台。

    您可以只创建一个始终返回 true 并从 WHEN 调用的函数。

    private bool logData(object x)
    {
        Console.WriteLine(x.y);
        return true;
    }
    

    将对象更改为您需要的变量类型并将数据记录到控制台,或者只是在该行暂停调试器以在运行时查看对象。

    只需将该功能作为一项要求添加到您的 When 谓词中:

    When( x=> x.Count != Null && x.Count >= 0
          && logData(x), () => { ... }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-07-10
      • 1970-01-01
      • 1970-01-01
      • 2012-08-24
      • 1970-01-01
      • 1970-01-01
      • 2022-08-18
      相关资源
      最近更新 更多