Estoy trabajando en un proyecto grande en el que tengo que presentar una forma eficiente para que un usuario ingrese datos en un formulario.Optimización de Autocompletar para grandes conjuntos de datos
Tres de los campos de esa forma requieren un valor de un subconjunto de una fuente de datos común (Tabla SQL). Usé JQuery y JQuery UI para construir un autocompletar, que se publica en un genérico HttpHandler.
Internamente, el controlador utiliza Linq-to-sql para captar los datos requeridos de esa tabla específica. La tabla tiene aproximadamente 10 columnas diferentes, y la expresión linq usa SqlMethods.Like() para coincidir con el término de búsqueda único en cada uno de esos 10 campos.
El problema es que esa tabla contiene unas 20K filas. El autocompletado funciona sin problemas, acepta el gran volumen de datos que introduce los desajustes, en las proximidades de 6 segundos aproximadamente (cuando se depura en mi máquina local) antes de que aparezca.
El autocompletado de JqueryUI tiene 0 demoras, consultas en la tecla 3 y el resultado de la publicación se realiza en un estilo de Facebook de varias filas seleccionables. (Casi tuve que reescribir el complemento de autocompletar ...).
Entonces, el problema es la velocidad de los datos frente a la velocidad. ¿Alguna idea sobre cómo acelerar esto? Los únicos dos pensamientos que tuve fueron almacenar en caché los datos (¿Cómo/Dónde?); o utilice un lector de datos sql directo para acceder a los datos?
¡Cualquier idea sería muy apreciada! Gracias ,
<bleepzter/>
Gracias, gracias, gracias! ¡Funcionó a las mil maravillas! – bleepzter
Excelente enfoque hacia el autocompletado me veía como esta solución gracias –