Ric*_*nks 8 c# architecture asp.net validation enterprise-library
我刚开始使用ms验证块,我觉得很棒.但是有关层之间数据验证的几个问题.
目前我正在使用存储库模式作为数据访问层的桥梁.在我的逻辑层中,我正在填充我的业务对象,然后使用验证块进行验证,然后将其传递到我的存储库层,然后将其传递到数据访问层以进行插入.我应该在存储库中再次验证它吗?如果是这样,我再次使用该块验证还是有更好的方法在此级别执行此操作?
只要您使用分层架构,其中对存储库的所有调用都通过业务层,您就不必在存储库中再次验证它。
但是,如果存储库正在由不通过业务层的其他系统使用,则您需要在存储库层中对其进行验证。
但是,这实际上违反了 DRY 不要重复自己的原则。
因此,如果您需要在存储库中进行验证,则不应在业务层中进行验证。