Как правило, вы не должны редактировать сгенерированный код, потому что сделанные вами изменения будут перезаписаны при повторной генерации.Вот почему большинство генераторов испускают частичные классы.
Лучшей практикой для вашей ситуации будет создание нового файла в вашем решении с другим объявлением частичного класса.В этом файле добавьте атрибут MetadataType
в класс и добавьте свои атрибуты проверки на уровне свойств в класс «собеседника» (тот, на который есть ссылка в атрибуте).Это позволяет вам использовать атрибуты проверки в сгенерированных свойствах, и, если ваша модель / база данных изменится, вы все равно сможете заново сгенерировать классы модели, не теряя их.
Например, ваш новый файл может выглядеть примерно так:
[MetadataType(typeof(PersonMetadata))]
partial class Person
{
// Add logic to the generated class in here.
public string FullName
{
get { return FirstName + " " + LastName; }
}
}
class PersonMetadata
{
// Add attributes to the generated properties in here.
[Required]
public string FirstName { get; set; }
}