Como la aplicación "subía" archivos excel se añadió el paquete ExcelDataReader para su procesamiento.
Dicho procesamiento se ubica en la capa de servicios y consiste
en generar un dataset por el stream enviado desde
Front para realizar validaciones de los campos en base a una plantilla y finalmente
enviarlos a Blobs de Azure. Desde aquí se cargarían luego los modelos asociados para poder insertarlos en BBDD.
Para excel con miles de filas se encontró que la inserción tardaba mucho. La primera
opción fue la de deshabilitar la configuración de "trackeo" del
contexto AutoDetectChangesEnabled pues no se utilizaban hasta
una nueva llamada a la API. Los tiempos bajaron en un 80% y aun así se barajó la posibilidad de generar las queries sql de inserción
"en crudo" lo que optimizaba en un 96% aproximadamente, es decir, lo que
tarda SQL en ejecutar las miles de queries de inserción.