2011-02-28 28 views
6

¿Poner todas mis tablas en un solo edmx dañará significativamente el rendimiento? He escuchado que esta es una mala práctica, pero esto fue antes de que la entidad implementara la carga diferida. Entonces, ahora que tenemos la entidad 4, ¿no es un problema?Entity framework - Todas las tablas en un solo archivo edmx

Planeo abstraer mis Modelos extendiendo las clases parciales de cada entidad generada, implementando ICrud<ConcreteModel>. Esto, combinado con MVC3, debería anular cualquier problema de acoplamiento.

+0

¿Cuántas mesas estamos hablando? –

+0

No creo que EF haya sido diseñado para disminuir la velocidad dependiendo de la cantidad de tablas presentes en el modelo, siempre y cuando no esté cargando cada colección de entidades en el modelo, no debería afectar nada ... –

+0

@Justin E. Morgan - ~ 45 –

Respuesta

3

Sí, daña el rendimiento. Problemas de rendimiento en Tiempos de carga de metadatos y en La generación de vista son el resultado de un gran modelo EDMX.

Tome un vistazo a este post donde he discutido este asunto en detalle:

Entity Framework 4: Does it make sense to create a single diagram for all entities?

+0

Su publicación proporciona una gran idea. ¿Cómo encaja Lazy Lazy en la imagen? ¿El rendimiento del modelo existente era lo suficientemente bajo como para requerir una carga lenta en un puñado de Entidades? ¿O había un "bootstrapper" que solía cargarlos todos a la vez? –

+0

La carga diferida no tiene nada que ver con que su modelo sea pequeño o grande. Es simplemente una característica ORM que EF no tiene en v1.0 para que lo agreguen a v4.0. Como dije, el rendimiento, los tiempos de carga de metadatos y la generación de vistas son las únicas cosas de las que debe preocuparse si planea crear un modelo de datos de entidad grande. –

Cuestiones relacionadas