目前在Nancy(Nancy FX?)中验证模型的方法是什么?
它是自己滚动,使用DataAnnotations还是每个类都应该实现AbstractValidator?
我正在尝试验证许多模型 - 我的用户注册页面和常规模型发布页面。使用AbstractValidator时;在我的模块课程中,我是致电.BindAndValidate<Foo>()
还是.Validate(fooInstance)
?
这个post描述了一种方法,但是它的3年前有可能有更新的方法吗?
答案 0 :(得分:1)
有一种方法可以进行验证,即调用this.Validate(instance)
。 BindAndValidate<>()
字面意思是,首先它绑定模型然后它会调用Validate。
Validate方法将搜索验证工厂,该工厂将为模型创建实际验证器。我使用流畅的验证,所以在我的情况下,它调用定义的验证器。
我无法帮助您处理数据注释,因为我没有使用它,但是使用FluentValidation我只需安装Nancy.Validation.FluentValidation包(nuget),然后定义验证器。就是这样。我假设采用类似的数据注释方法。
请注意.BindAndValidate()
将验证结果设置为Context.ModelValidationResult
。