2012-03-12 3 views
2

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

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

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

ответ

3

Итак, вы должны использовать атрибут 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; } 
} 
+0

Ах, здорово, спасибо – cgraus

+0

@cgraus вы радушны :) – gideon

+0

, кажется, работает хорошо! – afreeland