Solr.NET快速入门(五)【相似查询,拼写检查】

solr的相似匹配 背景: 在很多商城中的商品搜索结果页中,有显示"猜你喜欢"的商品如图(1),这些数据需要根据当前的搜索条件查找出相似的商品                 图(1) 目的:通过solr查找出与当前搜索条件相似的商品 1.solr实现方法介绍        Solr 使用 MoreLikeThisComponent(MLT)和 MoreLikeThisHandler 阅读详情

相似查询

此功能会返回原始查询结果中返回的每个文档的类似文档列表。

参数通过QueryOptions的MoreLikeThis属性定义。

示例:搜索“apache”,为结果中的每个文档搜索“cat”(类别)和“manu”(制造商)字段中的相似文档:

ISolrBasicOperations<Product> solr = ...
var results = solr.Query(new SolrQuery("apache"), new QueryOptions {
    MoreLikeThis = new MoreLikeThisParameters(new[] {"cat", "manu"}) {
        MinDocFreq = 1, // minimum document frequency
        MinTermFreq = 1, // minimum term frequency
    },
});
foreach (var r in results.SimilarResults) {
    Console.WriteLine("Similar documents to {0}", r.Key.Id);
    foreach (var similar in r.Value)
        Console.WriteLine(similar.Id);
    Console.WriteLine();
}

支持在Solr文档中定义的所有参数。

拼写检查

您需要在标准请求处理程序中安装SpellCheckComponent才能使用它。

接下来,必须提供拼写检查字典。 通常,通过在提交/优化时调用BuildSpellCheckDictionary()创建默认字典(您还可以配置Solr自动重建拼写检查索引):

ISolrOperations<Product> solr = ...
solr.BuildSpellCheckDictionary();

现在,您可以通过在QueryOptions中定义SpellCheck参数来开始发出拼写检查查询:

ISolrOperations<Product> solr = ...
var results = solr.Query("ipo appl", new QueryOptions {
  SpellCheck = new SpellCheckingParameters {Collate = true}
});

然后从结果中获取建议.SpellChecking,ie .:

foreach (var sc in results.SpellChecking) {
    Console.WriteLine("Query: {0}", sc.Query);
    foreach (var s in sc.Suggestions) {
        Console.WriteLine("Suggestion: {0}", s);                    
    }
}

这将打印:

Query: ipo
Suggestion: ipod
Query: appl
Suggestion: apple

除了extendedResults选项之外,所有SpellCheckComponent参数都受支持。

SolrNet:.Net的Solr客户端 SolrNet是.NET的和SolrCloud客户端 SolrNet不会尝试对Solr进行太多抽象,而是假设您知道Solr是什么以及如何使用它,就像在使用ORM之前需要了解关系数据库一样。 如果您不熟悉Solr,请花一些时间来学习,请参阅和 。 考虑买一本。 资料下载 最简单的方法是使用我们的NuGet软件包: 索尔 包 描述 .NET Framework .NET标准 核心库,最适合与DI集成包之一一起使用 4.6 2.0 4.6 2.0 一体化 4.6 2.0 4.6.1 2.0 4.6 2.0 4.6 2.0 4.6 2.0 4.6 2.0 4.6 -- 立即下载

相关推荐

solrNet使用

solrNet使用教程,代码,包括新增,删除,更新,连接等。资源全

Solr.NET快速入门(一)【基本使用,映射字段】

字典映射和动态字段Solr dynamicFields可以根据用例不同地映射。 它们可以被“静态地”映射,例如,给定:<dynamicField name="price_*" type="integer" indexed="true" stored="true"/>一个特定的dynamicField实例可以映射为:[SolrField("price_i")] public decimal? P

极客神殿 2953

SolrNet Source

SolrNet Source

solr与.net系列课程(一)solr的安装与配置

不久之前开发了一个项目,需要用到solr,因为所以在开始再网上查找资料,但是发现大部分的资料都是很片面的,要么就是只讲解solr如何安装的,要么就是只讲解solr的某一个部分的,而且很多都是资料都是一模一样的,一个人转载另一个人的,很难找到一个从solr配置,到与数据库连接在结合实际项目的,而且由于solr使用java开发的,所以现实中大多数的实例都是java版本...

weixin_30379531的博客 172

告别机载网络通信混乱:利用ARINC825的LCC与带宽管理机制构建高可靠CAN总线

本文深入探讨了ARINC825规范如何通过逻辑通信通道(LCC)和带宽管理机制解决机载CAN总线通信的混乱问题。文章详细解析了ARINC825的核心架构设计、LCC工程实现、时间触发带宽管理等关键技术,展示了其在提升航空电子系统可靠性和实时性方面的显著效果,为现代飞机通信系统提供了高可靠解决方案。

weixin_26878995的博客 240

FPGA实战:用DDR3和乒乓操作解决视频帧撕裂问题(附Verilog代码)

本文详细介绍了如何利用DDR3内存和乒乓操作架构解决FPGA视频处理中的帧撕裂问题。通过多帧缓存原理、AXI接口配置和自适应乒乓操作设计,有效隔离读写操作,确保视频流稳定传输。文章包含Verilog代码实现和性能优化技巧,适用于工业相机、医疗影像等高速视频处理场景。

m2n3b4v5c6的博客 288

推荐 SolrNet:一款强大的 .NET 库,用于操作 Apache Solr

如果你正在寻找一个可以轻松地管理和搜索数据的工具,那么 SolrNet 可能是你的最佳选择。SolrNet 是一个开源的 .NET 库,可以帮助你通过简单的 API 调用来与 Apache Solr 进行交互。 ## 什么是 SolrNet? SolrNet 是一个 .NET 库,用于与 Apache Solr 进行通信。它提供了简单易用的接口,可以帮助你创建、更新、查询索引,并且支持多种数据类...

gitblog_00007的博客 551

硬件原理图:从软件思维到硬件接口的嵌入式开发破局指南

本文为软件开发者提供了读懂硬件原理图的嵌入式开发破局指南。文章将硬件原理图类比为“硬件系统的架构图”,引导读者将软件API调用思维迁移到硬件接口理解上,详细解析了电阻、电容、二极管等常见元器件的“硬件API”功能与选型逻辑,并通过实战电路拆解,阐述了从原理图分析到驱动代码编写的完整思维链条,帮助开发者建立软硬件协同的系统级视角。

lg888的博客 492

Solr.NET快速入门(四)【相似查询,拼写检查】

相似查询 此功能会返回原始查询结果中返回的每个文档的类似文档列表。 参数通过QueryOptions的MoreLikeThis属性定义。 示例:搜索“apache”,为结果中的每个文档搜索“cat”(类别)和“manu”(制造商)字段中的相似文档: ISolrBasicOperations<Product> solr = ... var results = solr.Quer...

a879086的博客 153

一文带你弄懂thermal governor IPA

当current temp < target temp时,使用k_pu,当current temp >= target temp时,使用k_po。如果current_temperature = switch_on_temp时,则k_p = k_pu,这时Pmax。如果current_temperature = target_temp时,则k_p = k_po,这时Pmax。2、解析dts,获得switch_on_temp和target_temp。3、初始化k_pu/k_po/k_i/k_d的常数。

yxw0609131056的博客 1245

[ENVI]-[高光谱遥感]-波谱沙漏分析工具的使用

图1-2-1查看特殊波段的坏波段图1-2-2在中添加坏波段ENVI波谱沙漏分析工具MNF变换。

m0_57992372的博客 1467

Solr.NET快速入门(五)【聚合统计,分组查询】

聚合统计 属性 说明 Min 最小值 Max 最大值 Sum 总和 Count 记录数,也就是多少行记录 Missing 结果集中,有多少条记录是空值 SumOfSquares 平方和(x1^2 + x2^2+xn^2) Mean 平均数(x1+x2+xn)/n StdDev 标准差 示例: ISolrOperations<Prod...

a879086的博客 210

Labview数据存储与读取——TDMS文件的创建与写入

Labview数据存储与读取——TDMS文件的创建与写入 你好,这是我在自学Labview编写软件过程中使用的一些功能。我在存储采集卡数据时,通过阅读大量他人的程序,发现TDM及TDMS文件十分适合波形数据的记录,TDMS文件比TDM文件在存储动态类型数据时读写速度更快,而且TDMS 文件没有容量限制,适合存储数据量庞大的测试数据。 前言少叙,书归正传 这一篇博客,说明一下如何使用基本的TDMS功能实现数据文件的存储。 所需要的控件如上图所示,在程序框图——编程——文件I\O——TDMS 中,写入TDMS

滑板小帅程序开发 2万+

SolrNet与Docker:快速搭建本地Solr开发环境

SolrNet是一个专为.NET开发者设计的Solr客户端库,它简化了在.NET应用中与Solr搜索引擎的交互过程。结合Docker容器技术,我们可以在几分钟内搭建起一个功能完善的本地Solr开发环境,无需复杂的配置和依赖管理。 ## 为什么选择Docker搭建Solr环境? 使用Docker搭建Solr开发环境具有以下显著优势: - **环境一致性**:确保开发、测试和生产环境的一致性,避

gitblog_01151的博客 467

基于R-CNN深度学习的常见手势识别系统:数据集、模型和UI界面的完整实现

卷积神经网络(CNN):用于从图像中提取特征。区域提议网络(RPN):用于生成可能包含手势的候选区域。:将候选区域调整为固定大小,并进行进一步的分类和回归。接下来,我们需要加载一个预训练的Faster R-CNN模型,并对其进行微调。我们将使用# 加载预训练的Faster R-CNN模型# 获取分类器的输入特征数# 替换分类器头部,设置为我们数据集的类别数(假设有5类手势)

YOLO 997

Python 爬虫实战:Boss直聘 Python 岗位招聘数据爬取

本文介绍了一个Python爬虫项目,用于抓取Boss直聘平台的Python岗位招聘数据并进行可视化分析。项目采用requests库发送POST请求,通过抓包分析获取JSON接口,绕过HTML解析直接获取结构化数据。主要内容包括: 接口分析:找到关键POST接口,解析请求头和JSON参数格式 环境准备:安装requests/pandas/matplotlib/pyecharts等依赖库 核心实现: 手动获取登录Cookie 构建请求头和城市代码映射 实现分页抓取职位列表数据 项目特色在于直接解析JSON接口而

u014481728的博客 296

三大.NET全文搜索框架比较:Lucene.NET, Elasticsearch, Solr 实战与性能分析

Lucene.NET适合需要定制化搜索解决方案并且对集群没有太多需求的小型项目或单机应用。是大规模数据和分布式搜索的理想选择,适合实时搜索和复杂查询需求。更适合企业级应用,功能强大,但配置和维护复杂。这三者各有优势,具体选择取决于项目规模、搜索需求和扩展性要求。

Hellc007的博客 2116

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Solr.NET快速入门(二)

字典映射和动态字段 Solr dynamicFields可以根据用例不同地映射。 它们可以被“静态地”映射,例如,给定: <dynamicField name="price_*" type="integer" indexed="true" stored="true"/> 一个特定的dynamicField实例可以映射为: [SolrField("price_i")] p...

a879086的博客 225

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Solr.NET快速入门(二)【查询】

简单查询这是SolrNet中最简单的“查询对象”。 无论你给它什么都直接传递给Solr的q参数ISolrOperations<Product> solr = ... var products1 = solr.Query(new SolrQuery("lucene")); // search for "lucene" in the default field var products2 = solr.

极客神殿 4631

Solr.NET快速入门(六)【聚合统计,分组查询】

聚合统计 属性 说明 Min 最小值 Max 最大值 Sum 总和 Count 记录数,也就是多少行记录 Missing 结果集中,有多少条记录是空值 SumOfSquares 平方和(x1^2 + x2^2+xn^2) Mean 平均数(x1+x2+xn)/n StdDev 标准差 示例:ISolrOperations<Prod

极客神殿 2029

Solr.NET快速入门(三)【高亮显示】

此功能会“高亮显示”匹配查询的字词(通常使用标记),包括匹配字词周围的文字片段。 要启用高亮显示,请包括HighlightingParameters QueryOptions对象,其中包括要应用高亮显示的字段。 示例代码: var results = solr.Query(new SolrQueryByField("features", "noise"), new QueryOption...

a879086的博客 140

Solr.NET快速入门(七)【核心管理,Fluent API】

Solr核心管理命令 Fluent API 相关

极客神殿 1199

Solr.NET快速入门(四)【高亮显示】

此功能会“高亮显示”匹配查询的字词(通常使用标记),包括匹配字词周围的文字片段。要启用高亮显示,请包括HighlightingParameters QueryOptions对象,其中包括要应用高亮显示的字段。示例代码:var results = solr.Query(new SolrQueryByField("features", "noise"), new QueryOptions { H

极客神殿 1432

提升搜索体验:SolrNet查询优化与高级搜索功能详解

SolrNet是一款专为.NET开发者打造的Solr客户端,它提供了强大的查询构建和结果处理能力,帮助开发者轻松实现高效的搜索引擎功能。本文将深入探讨SolrNet的查询优化技巧和高级搜索功能,助你打造更快、更精准的搜索体验。 ## 一、SolrNet基础查询构建 SolrNet提供了直观的查询API,让开发者可以轻松构建各种复杂的搜索条件。通过`ISolrQuery`接口,你可以创建简单的关

gitblog_00421的博客 334
上一篇: Solr.NET快速入门(四)【高亮显示】
下一篇: Solr.NET快速入门(六)【聚合统计,分组查询】
.NET跨平台
博客等级 码龄15年 6066粉丝 738原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值