我在List<Product>
服务器上有一个 ASP.NET Web 应用程序和一个(在 Application[] 商店中)。类 Product 有一个 Name 属性。我需要让用户能够根据名称搜索产品。例如,如果用户键入“honda computer”,则应用程序必须显示“2001 Honda Passport Engine Computer (OEM)”。搜索必须非常快,将来我将添加自动完成功能(AJAX)。
到目前为止,我有几个想法如何解决这个问题:
编写或使用诸如 B-Tree、Trie、后缀树、前缀树之类的开源实现。不幸的是,数据结构和算法并不是我最强的技能(该死的哈佛,这么多钱是白来的)。
使用搜索引擎 - Lucene.NET、Velocity 或 MemCached.NET。从来没有用过,所以我不知道他们是否能在这种情况下工作。我不需要搜索同义词,而且我的应用没有访问文件系统的权限(因此没有索引文件)。
欢迎任何建议。