【问题标题】:What is the cause of FluentValidation Method Not Found exception?FluentValidation Method Not Found 异常的原因是什么?
【发布时间】:2019-07-03 23:52:55
【问题描述】:

我有一个领域驱动设计解决方案,但由于某种原因,当通过 GateWay 进行 API 调用时,我在 RunTime 收到此异常: p>

One or more errors occurred. (Method not found: 'Void FluentValidation.AbstractValidator`1.When(System.Func`2<!0,Boolean>, System.Action)'.)

错误发生如下:

我有这样的解决方案:

我现在主要关注的 4 个项目是:

  1. Core.Model
  2. Account.Api
  3. Service.Api.Gateway
  4. Web.ClientSite

Web.ClientSite 向Service.Api.Gateway 发出请求,然后调用Account.Api。 请注意,Core.Model到处都被引用

非常重要:如果我从 Core.Model 中删除 FluentValidation 的引用,异常就会消失。

我希望这些信息就足够了。你认为我为什么会遇到这个异常,我该如何消除。

【问题讨论】:

    标签: exception fluentvalidation api-gateway


    【解决方案1】:

    看起来某些库 (ocelot) 与 FluentValidation 8.1.2 中的新更改不兼容。尝试在 8.1.2 之前降级到 FluentValidation。希望对你有帮助

    【讨论】:

    • 谢谢!!!您的诊断是 100% 正确的。但是,FluentValidation v8.*.* 版本都不能与 Ocelot 版本 12 和 13 一起使用。我设法使用的 FluentValidation 的唯一版本是 7.6.105(可能早期版本也可以使用,但我使用了我可以制作的最新版本它工作)
    • 我在 10.1.0 中遇到了同样的错误,并且降级到 9.5.4 有效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多