【发布时间】:2014-04-16 17:48:39
【问题描述】:
我正在尝试开发一个能够在大型(300,000 人)sqlite 数据库中搜索人员的 Windows Phone 应用程序。 问题是找人需要半分钟。
您知道如何加快搜索速度吗?
这是我的代码:
var queryname = conn.Table<contacts>().Where(
x =>
(
((x.firstName.ToLower() == input1) && (x.lastName.ToLower() == input2))
|| ((x.firstName.ToLower() == input2) && (x.lastName.ToLower() == input1))
|| ((x.firstName.ToLower() == input1) && (x.lastName.ToLower().Contains(input2)))
|| ((x.lastName.ToLower().Contains(input1)) && (x.firstName.ToLower() == input2))
));
var resultname = await queryname.ToListAsync();
Person1.Content = null;
foreach (var item in resultname)
{
outputname = string.Format("{0} {1}", item.firstName, item.lastName);
}
输入 1 和 2 是用户输入的两个单词。
提前谢谢你,
纳丁
【问题讨论】:
-
给你的表添加索引怎么样!
标签: c# linq sqlite windows-phone