Siempre he usado acceso directo a datos para tratar objetos en el pasado (manualmente ejecutando una consulta y mapeando los resultados en objetos de datos). Sé que Microsoft actualmente está presionando EF para que sus clientes lo utilicen para consultar objetos de datos.Entity Framework vs Direct Data Access
Tengo algunas preguntas para la comunidad con respecto a esto: -
Si usted tiene una base de datos compleja, es decir, un par de cientos de mesas, una buena cantidad de procedimientos almacenados, vistas, todo está en 3NF. ¿La carga de gestionar dos esquemas (un mapeo de esquema de EF local y un DB) compensa el intercambio?
Una vez que comienza a aumentar el acceso a los datos, ¿cómo se compara el almacenamiento en caché en los dos? Sé que en Acceso directo puede implementar cualquier forma de almacenamiento en caché que desee, ¿EF permite algo similar?
Teniendo en cuenta la historia de Microsoft de matar productos después de presionarlos fuertemente y hacer que la gente escriba para ellos (SQL-NS, Linq-to-Sql) ¿cómo es que le puede pasar esto a EF?
Como ya he dicho que estoy actualmente en gran medida el uso de acceso directo en el momento, pero teniendo en cuenta una migración (es decir, con nuevas consultas en el futuro, no dar marcha atrás en todos ellos por el momento), y fue en busca de asesoramiento de la resto de la comunidad en sus puntos de vista.
+1. Aunque los 'grandes' frameworks pueden ser un poco lentos, especialmente cuando se usan descuidadamente, realmente son bastante convenientes durante el proceso de desarrollo. Y si realmente hay un problema de rendimiento en algún lugar, entonces hay tiempo para la optimización. Por lo menos, el Dapper debería hacer el truco: simplemente creo que el acceso directo a los datos y el mapeo "manual" es demasiado tedioso. :) –