проблема
Допустим, у нас есть сущность Person:
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public string Password { get; set; }
public string Email { get; set; }
public bool IsAdmin { get; set; }
}
Довольно просто, ничего особенного здесь не видно. Теперь, когда у нас есть эта сущность, мы хотим заполнить ее данными. Мы собираемся создать нового «человека». Мы могли бы просто вернуть эту сущность на наш взгляд, чтобы мы могли заполнить ее данными и сохранить все целиком. Но это приводит к многочисленным проблемам:
Возможно, мы не хотим, чтобы пользователь выбирал свой идентификатор.
Мы хотим, чтобы пользователь подтвердил свой пароль, поэтому нам, вероятно, понадобятся 2 поля пароля.
Мы не хотим, чтобы пользователь выбирал, хочет ли он быть администратором или нет (хотя это может привести к некоторым интересным экспериментам)
Если мы изменяем нашу базу данных (и, следовательно, сущности), наши формы будут опираться на сущности, которые отличаются от тех, которые мы изначально планировали.