Я использовал Entity Framework с VS2010 для создания простого класса person со свойствами firstName, lastName и email. Если я хочу прикрепить DataAnnotations, как это сделано в этом сообщении в блоге , у меня небольшая проблема, потому что мой класс person создается динамически. Я мог бы редактировать динамически сгенерированный код напрямую, но всякий раз, когда мне приходилось обновлять мою модель, весь мой код проверки мог быть уничтожен.
Первый инстинкт был создать частичный класс и попытаться прикрепить аннотации, но он жалуется, что я пытаюсь переопределить свойство. Я не уверен, что вы можете делать объявления свойств в C # как объявления функций в C ++. Если бы вы могли, это может быть ответом. Вот фрагмент того, что я пробовал:
namespace PersonWeb.Models
{
public partial class Person
{
[RegularExpression(@"(\w|\.)+@(\w|\.)+", ErrorMessage = "Email is invalid")]
public string Email { get; set; }
/* ERROR: The type 'Person' already contains a definition for 'Email' */
}
}