Cri*_*vão 3 c# validation fluentvalidation servicestack
我正在使用ServiceStack实现Api.我的解决方案的一个关键方面是积极的验证策略.
我使用ServiceStack的ValidationFeature,这意味着如果在应用程序容器中注册了IValidator <ReqDto>(或其后代:AbstractValidator <ReqDto>),则验证将在服务之前自动运行.
通过积极验证,我的意思是我检查所有可能的错误情况,以及验证器级别的逻辑验证.因此,我的服务逻辑非常简洁.
从实际的角度来看,服务验证的服务逻辑的这种独立性是非常好的,因为它提供了非常容易阅读和推理服务逻辑/实现的原因.但是,我开始认为FluentValidation的规则和规则集更适合简单的格式验证,而不是直接在我正在进行的数据库访问(主要是测试源自请求中提取的ID的404错误).
问题:
1:验证逻辑在概念上访问数据库是否不正确?
2:从我所看到的,到目前为止,包括SS源,我没有找到一个形式来定义的情况下,如FluentValidation规则:从请求拉一个ID,访问数据库中检索一个实体,并抛出一个404如果没有找到进入.我只使用FV规则来定义基本格式验证,例如:
RuleFor(x => x.UserName).NotEmpty();
RuleFor(x => x.Password).NotEmpty();
Run Code Online (Sandbox Code Playgroud)
其余的我手动做.有解决这个问题的人吗?
注意:这不是关于如何将ValidationResult/ValidationError转换为HttpResult/HttpError的问题.通过使用SS 3.9.44中引入的ValidationFeature的ErrorResponseFilter,我已经介绍过了.谢谢
归档时间: |
|
查看次数: |
900 次 |
最近记录: |