如果我遵循Clean体系结构,我应该把检查外键是否存在的逻辑放在哪一层



我正在.NET Core中按照Clean Architecture构建一个web应用程序。我有一个用于创建用户的用例类。每个用户都有一个作为id传入的角色。用例将调用用户存储库来创建用户。

目前,我正在使用FluentValidation来验证请求对象。它只是纯粹的检查,比如长度,而不是空的,等等

我的问题是,我不知道将验证逻辑放在哪里,以验证所提供角色的存在。验证器当前位于应用程序层。我打算把验证逻辑放在用户存储库中,但这听起来不对

你有什么想法吗?提前谢谢。

您应该使用Fluent Validation将其添加到验证器中。有一些选项可以制作自定义验证器,并使用Fluent Validation使其成为async

在存储库中创建用于检查角色的方法并不一定是错误的。但它应该在验证层与其他检查(如非空等(一起调用。

为了提高性能,请确保在所有其他验证通过后调用检查。

相关内容

  • 没有找到相关文章

最新更新