我正在研究一个大型项目,我必须为用户提供一种有效的方式将数据输入到表单中。大型数据集的自动完成优化
该表单的三个字段需要来自公共数据源(SQL表)的子集的值。我使用JQuery和JQuery UI来构建一个自动完成,并将其发布到一个通用的HttpHandler。
内部处理程序使用Linq-to-sql来获取该特定表所需的数据。该表包含大约10个不同的列,linq表达式使用SqlMethods.Like()来匹配这10个字段中的每个字段上的单个搜索项。
问题是该表包含一些20K行。自动完成工作完美无缺,接受数据量庞大的数据引入了删除,在6秒左右(当我的本地计算机上进行调试时)附近出现之前。
JqueryUI自动完成有3个键的延迟时间,查询结果和帖子的结果是在Facebook风格的多行可选选项。 (我几乎不得不重写自动完成插件...)。
所以问题是数据与速度。任何想法如何加快这一点?我唯一的两个想法是缓存数据(How/Where?);或直接使用SQL数据读取器进行数据访问?
任何想法将不胜感激! 谢谢,
<bleepzter/>
谢谢,谢谢,谢谢!它像一个魅力一样工作! – bleepzter 2011-01-07 17:39:46