У меня есть вопрос по дизайну, связанный с сущностями Entity Framework.
Я создал следующую сущность:
public class SomeEntity {
// full review details here
}
У этой сущности, например, 30 столбцов. Когда мне нужно создать новую сущность, это отлично работает. У меня есть все необходимые поля для вставки в базу данных.
В моем приложении есть несколько мест, где мне нужно отображать табличные данные с некоторыми полями из SomeEntity, но мне не нужны все 30 столбцов, может быть, только 2 или 3 столбца.
Могу ли я создать совершенно новую сущность, содержащую только нужные мне поля (которая сопоставляется с той же таблицей, что и SomeEntity, но извлекает только нужный мне столбец?)
Или имеет смысл создать класс предметной области (например, PartialEntity) и напишите такой запрос:
var partialObjects = from e in db.SomeEntities
select new PartialEntity { Column1 = e.Column1, Column2 = e.Column2 };
Я не уверен, как лучше всего поступать подобным образом. Плохая идея иметь две сущности, которые сопоставляются с одной и той же таблицей / столбцами? Мне никогда бы не понадобилась возможность создать PartialEntity и сохранить его в базе данных, потому что в нем не было бы всех необходимых полей.