Tengo una pregunta de diseño relacionada con las entidades de Entity Framework.Entity Framework Design - Múltiples "Vistas" para los datos
He creado la siguiente entidad:
public class SomeEntity {
// full review details here
}
Esta entidad tiene como ejemplo 30 columnas. Cuando necesito crear una nueva entidad, esto funciona muy bien. Tengo todos los campos requeridos para insertar en la base de datos.
Tengo algunos lugares en mi aplicación donde necesito mostrar algunos datos tabulares con algunos de los campos de SomeEntity, pero no necesito las 30 columnas, tal vez solo 2 o 3 columnas.
puedo crear una entidad totalmente nueva que tiene sólo los campos que necesito (que corresponde a la misma mesa que SomeEntity, pero sólo recupera la columna que quiero?)
O ¿tiene más sentido para crear una la clase de dominio (como PartialEntity) y escribir una consulta como esta:
var partialObjects = from e in db.SomeEntities
select new PartialEntity { Column1 = e.Column1, Column2 = e.Column2 };
no estoy seguro de cuál es la forma adecuada de hacer este tipo de cosas. ¿Es una mala idea tener dos entidades que se asocien a la misma tabla/columnas? En realidad, nunca necesitaría la capacidad de crear una entidad parcial y guardarla en la base de datos, porque no tendría todos los campos necesarios.
¿Qué pasa con mi segundo enfoque? ¿Es eso válido simplemente crear un POCO y escribir una consulta que devolverá ese objeto al consultar mis entidades reales? – Dismissile