blob: 2f1a5ae2f63ed09fe2115dbdafa93587cfd94425 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
using System.ComponentModel.DataAnnotations;
using LibraryAPI.Models;
namespace LibraryAPI.Validators {
public class NameAttribute : ValidationAttribute {
public string[] valid_names = { "regular", "librarian" };
public string GetErrorMessage() {
return "Group name must be \"regular\" or \"librarian\"";
}
protected override ValidationResult? IsValid(object? value, ValidationContext validationContext) {
var group = (Group) validationContext.ObjectInstance;
if(Array.Exists(valid_names, s => s == group.Name))
return ValidationResult.Success;
return new ValidationResult(GetErrorMessage());
}
}
}
|