与任何涉及命名约定的事情一样,没有正确的答案,但是验证方法存在许多常见问题,这些问题适用于某种方法,即:
我发现一种有用的方法是为我想要验证的每个模型对象都有一个单独的验证器类,它实现了一个公共IValidator接口,通常使用以下方法:
这允许在您的业务逻辑中非常自然地使用:
BusinessObject obj = new BusinessObject();
// populate fields
BusinessObjectValidator objValidator = obj.GetValidator();
if (objValidator.IsValid) {
obj.Save();
} else {
foreach (var errorMessage in objValidator.ErrorMessages) {
// output message
}
}
Run Code Online (Sandbox Code Playgroud)
这取决于您的验证方法。
如果它返回一个布尔值,那么以开头Is和结尾可能Valid是一个不错的起点。使用isBoolean调用通常会导致if语句中的代码可读。
如果您的验证方法抛出异常,那么通常我会使用类似的方法来开始方法名称Check。
但是,还需要考虑的是(方法通常应使用动词)以方法名开头Validate。该Is款式一般比较适用于性能。