Я занимаюсь разработкой кода с помощью Entity Framework 4.3, и кажется, что невозможно выразить ограничение CHECK с помощью аннотаций атрибутов или, ну, другими способами.Я вижу, что EF 5.0 будет добавлять поддержку для проверки перечислений , но это не совсем то, что мне нужно здесь.
Чтобы привести упрощенный пример, я хотел бы проверить, что всеPerson
объекты имеют имя «Боб» или «Гарри» и им 5, 10 или 30 лет.
public class Person
{
[Required]
[Check("Bob", "Harry")] //yes, this attribute is imaginary
public string FirstName { get; set; }
[Required, Check(5, 30, 50)] //check is still imaginary
public int Age { get; set; }
}
Я могу запустить скрипт изменения, чтобы добавить эти ограничения после фактаи я могу свернуть свой собственный атрибут проверки для выполнения проверок, но есть ли способ, который мне не хватает, чтобы фактически выразить не перечисленные ограничения CHECK в Entity Framework?