Добавление проверочных сообщений в классы MVC, сгенерированные Entity Framework - PullRequest
2 голосов
/ 12 марта 2012

Я начинаю проект MVC и проектирую свою БД в EF, что означает, что я проектирую таблицы, а VS создает классы, необходимые для доступа к ним.

Проблема в том, что я хочу использовать такие атрибуты, как DisplayName, Required и генерировать сообщения об ошибках валидации (включая указание правил для валидации).

Насколько я вижу, классы воссоздаются каждый раз, когда я меняю свою БД, поэтому я не могу добавить их в классы. Есть ли другой способ сделать это один раз и сохранить его?

1 Ответ

3 голосов
/ 12 марта 2012

Таким образом, вы бы использовали атрибут MetadataType и связали бы вашу сущность с типом, в котором вы будете устанавливать атрибуты проверки.

Примерно так для сущности Person:

[MetadataType(typeof(Person_Validation))]//<<link to metadata class
public partial class Person//<<<Your real entity class
{//this is in a separate file.
  //note =>partial. There's nothing in this class
}
public class Person_Validation//the validations go here.
{
        [StringLength(255, ErrorMessage="Name is required"), Required]
        [DisplayName("Name")]
        public string Name { get; set; }
}
...