Я работаю над большим проектом, в котором я должен предоставить пользователю эффективный способ ввода данных в форму.
Для трех полей этой формы требуется значение из подмножества общего источника данных (таблица SQL). Я использовал JQuery и JQuery UI для создания автозаполнения, который отправляет в общий HttpHandler.
Внутренне обработчик использует Linq-to-sql для захвата данных, требуемых из этой конкретной таблицы. В таблице около 10 различных столбцов, и выражение linq использует SqlMethods.Like () для сопоставления единственного условия поиска в каждом из этих 10 полей.
Проблема в том, что эта таблица содержит около 20 КБ строк. Автозаполнение работает безупречно, примите к сведению, что огромный объем данных приводит к удалению примерно за 6 секунд (при отладке на моем локальном компьютере), прежде чем он появится.
Автозаполнение JQueryUI имеет задержку 0, запросы по ключу 3 , а результат публикации оформляется в многострочном стиле Facebook с возможностью выбора. (Мне почти пришлось переписать плагин автозаполнения ...)
Итак, проблема в данных и скорости. Есть мысли о том, как это ускорить? У меня были только две мысли: кэшировать данные (как / где?); или использовать прямую программу чтения данных sql для доступа к данным?
Мы будем благодарны за любые идеи! Спасибо,
<bleepzter/>