无法加载类型“FluentValidation.Attributes.ValidatorAttribute”

问题描述 投票:0回答:1

System.TypeLoadException:“无法从程序集‘FluentValidation,Version=9.0.0.0,Culture=neutral,PublicKeyToken=7de548da2fbae0f0’加载类型‘FluentValidation.Attributes.ValidatorAttribute’。’

从 .netcore2 升级到 .netcore6 后出现上述错误。我尝试升级到最新的 10.x,但没有成功。此外,错误中没有 9.0.0 版本的 Nuget,只有 9.0.1 可用,这也会引发相同的错误。

c# .net-core fluentvalidation
1个回答
3
投票

从 FluentValidation 8.0 版开始,

ValidatorAttribute
已移至单独的 NuGet 包
FluentValidation.ValidatorAttribute
.

来自文档

不再推荐使用 ValidatorAttribute 来连接验证器,并且已移至单独的

FluentValidation.ValidatorAttribute
包。

请注意,不再推荐使用该属性, 甚至被认为是遗产。
因此,NuGet 包有以下通知。

此软件包已被弃用,因为它是遗留的并且不再维护。

文档展示了如何迁移

  • 在 ASP.NET Core 项目中,您应该使用服务提供者将模型连接到它们的验证器(这是自 FluentValidation 7 以来 ASP.NET Core 项目的默认行为)
  • 对于桌面或移动应用程序,我们建议使用 IoC 容器来连接验证器,尽管您仍然可以通过显式安装
    FluentValidation.ValidatorAttribute
    包来使用属性方法。
  • 在旧版 ASP.NET 项目(MVC 5 和 WebApi 2)中,
    ValidatorAttribute
    仍然是默认方法,并且会自动安装
    FluentValidation.ValidatorAttribute
    包以实现兼容性。但是,如果可以的话,我们建议您改用 IoC 容器。
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.