首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >内存中对象在.NET中的索引

内存中对象在.NET中的索引
EN

Stack Overflow用户
提问于 2012-10-23 17:39:20
回答 2查看 202关注 0票数 0

我想在我的应用程序中创建一个快速搜索。

假设我有一个类:

代码语言:javascript
运行
复制
public class Venue
{
    public virtual string LongName { get; set; }
    public virtual string ShortName { get; set; }
    public virtual string Market { get; set; }
    public virtual int ClientEmail { get; set; }
}

我想索引一组这个(和其他)对象。

它的想法是,用户将输入一些数据到文本框中,“内存索引”将接受该字符串,并返回一个或多个属性中包含搜索值的所有对象。

对于这样的事情,在.NET中有现成的解决方案吗?或者图书馆,或者别的什么?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-23 17:45:32

如果您想以相对较酷的方式存储数据,请检查Lucene.Net,甚至RavenDB文档数据库-顺便说一句,这是基于Lucene.Net的。RavenDB实现了LINQ驱动程序,所以你可以在集合中使用LINQ查询,并动态地获取它们。你有索引支持,所以你可以为你的计算实现非常高的性能。

票数 0
EN

Stack Overflow用户

发布于 2012-10-23 17:44:21

我不知道任何开箱即用的解决方案,但我会手动完成。

代码语言:javascript
运行
复制
string input = "whatever";
IEnumerable<Venue> matches = allVenues.Where(v => v.LongName.Contains(input)
                               ||  v.ShortName.Contains(input)
                               ||  v.Market.Contains(input)
                               ||  v.ClientEmail.ToString().Contains(input));

也许它已经足够快了。优点是你不需要任何额外的资源。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13027563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档