婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MongoDB實現(xiàn)基于關(guān)鍵詞的文章檢索功能(C#版)

MongoDB實現(xiàn)基于關(guān)鍵詞的文章檢索功能(C#版)

熱門標(biāo)簽:機器人外呼系統(tǒng)軟件存在問題 智能電銷機器人銷售話術(shù) 福州電銷機器人源代碼 兗州電話外呼營銷系統(tǒng) 南京400電話怎樣辦理 徐州ai電銷機器人原理 沈陽營銷電銷機器人招商 企業(yè)智能外呼系統(tǒng)價格多少 高德地圖標(biāo)注商戶位置

我的實現(xiàn)目標(biāo)是:

可以通過一個或多個關(guān)鍵詞搜索到文章。

可以通過文章的關(guān)鍵詞列表查詢到其相關(guān)文章。

查詢到的結(jié)果依據(jù)相關(guān)程度降序排列。

查詢速度要夠快。(理論上關(guān)鍵詞檢索比全文檢索要快很多的)

在網(wǎng)上找了一大圈,就沒有一個靠譜的方法,基本都是只能傳入單詞來檢索,而且基本都沒有提供C#驅(qū)動版本的代碼,于是乎自己研究出了這個實現(xiàn)方案:

首先要求使用標(biāo)簽、分詞、關(guān)鍵詞提取組件對文章對應(yīng)的關(guān)鍵詞進(jìn)行提取,然后作為數(shù)組格式,存入文章的Keywords字段中。

核心檢索代碼:

/// summary>
/// 根據(jù)關(guān)鍵詞獲取文章編號與標(biāo)題映射。
/// 注意:此方法會返回最為匹配的若干個項目,并根據(jù)匹配程度降序排列,即使是沒有任何關(guān)鍵詞匹配項,也會返回若干個結(jié)果的。
/// 另需注意:如果是根據(jù)文章關(guān)鍵詞來查詢,一般來說其中一定包含原文章,所以應(yīng)該把期望獲得的數(shù)量加1,并在結(jié)果中移除原文。
/// /summary>
/// param name="limitNum">數(shù)量上限/param>
/// param name="keywords">關(guān)鍵詞集合/param>
/// returns>文章編號與標(biāo)題映射字典/returns>
public async TaskDictionaryGuid, string>> GetArticleDicByKeywordsAsync(int limitNum, IEnumerablestring> keywords)
{
var list =
await
Database.GetCollectionDomain.Entity.Article>("Article").Aggregate()
.Match(q => !q.IsDeleted  q.Keywords != null)
.Project(q => new { q.Id, q.Title, Count = q.Keywords.Count(t => keywords.Contains(t)) })
.SortByDescending(q => q.Count)
.Limit(limitNum)
.ToListAsync();
return list.ToDictionary(f => f.Id, f => f.Title);
}

注意:這里一定要用Aggregate()方法做聚合,而不是常用的Find()方法做查詢,F(xiàn)ind()方法后面跟Project()方法也不會改變方法鏈中操作的對象類型,這樣后面的SortByDescending()方法的目標(biāo)對象還是Article類,而不是Project()方法中定義的匿名類,而SortByDescending()方法中傳入的表達(dá)式又僅允許用來選擇對象屬性,不允許進(jìn)行任何計算,所以就根本無法實現(xiàn)我們的需求,我在發(fā)現(xiàn)Aggregate()方法之前就在這里一直卡著很久~

用作關(guān)鍵詞搜索時一般就是把關(guān)鍵詞傳入就可以了,不過傳回的結(jié)果也有可能壓根沒有匹配到任何關(guān)鍵詞,所以最好在發(fā)給用戶前再檢查一遍項目的匹配程度,把沒有任何匹配的結(jié)果濾掉。

用作相關(guān)文章搜索時,直接把原文章的Keywords屬性值傳入,獲取數(shù)量要比你預(yù)計的數(shù)量多1,因為非常可能你的原文章就在獲取到的列表中,而且是前列,獲取后濾掉原文章的ID,再執(zhí)行Take方法返回你需要數(shù)量的項目即可(執(zhí)行Take方法是為了以防你的原文沒出現(xiàn)在列表中,這概率極小但也是有的)。

為了增進(jìn)查詢效率,還可以預(yù)設(shè)好索引,代碼如下:

var c=Database.GetCollectionDomain.Entity.Article>("Article");
c.Indexes.DropAll();
await c.Indexes.CreateOneAsync(
BuildersDomain.Entity.Article>.IndexKeys.Ascending(q => q.Keywords));
//參考自:http://mongodb.github.io/mongo-csharp-driver/2.2/reference/driver/admin/#creating-an-index

所使用的C#官方驅(qū)動版本是:MongoDB.Driver.2.2.3

您可能感興趣的文章:
  • C#簡單操作MongoDB的步驟全紀(jì)錄
  • C#中如何將MongoDB->RunCommand結(jié)果映射到業(yè)務(wù)類的方法總結(jié)
  • Mongodb在CSharp里實現(xiàn)Aggregate實例
  • C#中使用1.7版本驅(qū)動操作MongoDB簡單例子
  • MongoDB入門教程之C#驅(qū)動操作實例
  • C# 對MongoDB 進(jìn)行增刪改查的簡單操作實例
  • 關(guān)于C#生成MongoDB中ObjectId的實現(xiàn)方法
  • C#基于Mongo的官方驅(qū)動手?jǐn)]一個Super簡易版MongoDB-ORM框架

標(biāo)簽:景德鎮(zhèn) 大理 邯鄲 本溪 吉安 昭通 鶴崗 丹東

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MongoDB實現(xiàn)基于關(guān)鍵詞的文章檢索功能(C#版)》,本文關(guān)鍵詞  MongoDB,實現(xiàn),基于,關(guān)鍵詞,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MongoDB實現(xiàn)基于關(guān)鍵詞的文章檢索功能(C#版)》相關(guān)的同類信息!
  • 本頁收集關(guān)于MongoDB實現(xiàn)基于關(guān)鍵詞的文章檢索功能(C#版)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    不卡av在线网| 中文字幕亚洲精品在线观看 | 欧美最猛黑人xxxxx猛交| 中文字幕亚洲精品在线观看| 成人国产精品视频| 欧美色窝79yyyycom| 久久成人免费电影| 欧美福利一区二区| 亚洲综合区在线| 欧美日韩在线直播| 亚洲精品自拍动漫在线| 91高清视频免费看| 国产亚洲欧美日韩日本| 国产一级精品在线| 国产精品大尺度| 欧美视频精品在线观看| 五月综合激情日本mⅴ| 亚洲午夜在线电影| 欧美日韩国产在线播放网站| 欧美精品在欧美一区二区少妇| 亚洲h在线观看| 国产欧美日本一区二区三区| 欧美亚洲一区二区在线| youjizz国产精品| 国产精品1区2区| 日韩激情中文字幕| 中日韩免费视频中文字幕| 久久精品日产第一区二区三区高清版 | 男人操女人的视频在线观看欧美| 亚洲久草在线视频| 欧美午夜精品久久久久久超碰| 欧美成人激情免费网| 国产在线看一区| 日本不卡一二三| 精品制服美女丁香| 一区二区三区欧美激情| 国产日韩欧美一区二区三区乱码| 欧美视频日韩视频在线观看| 成人精品一区二区三区中文字幕| 日韩视频一区二区三区| 日本精品一级二级| 色老汉av一区二区三区| 日韩精品一区第一页| 欧美一区二区三区在线视频| 一本久久综合亚洲鲁鲁五月天| 777xxx欧美| 91免费视频观看| 日韩精品一区二| 亚洲电影中文字幕在线观看| 在线视频中文字幕一区二区| 日韩一区二区三区观看| 亚洲免费电影在线| 欧美性生活久久| 欧美成人官网二区| 日韩国产成人精品| 欧美亚洲精品一区| 亚洲精品亚洲人成人网在线播放| 亚洲精品福利视频网站| 国产亚洲1区2区3区| 麻豆成人av在线| 丝袜诱惑制服诱惑色一区在线观看| 亚洲精品一二三区| 欧美一三区三区四区免费在线看| 亚洲成人动漫在线观看| 免费在线一区观看| 成人午夜私人影院| 91麻豆精品久久久久蜜臀| av在线不卡网| 日韩三级.com| 亚洲欧洲美洲综合色网| 日本最新不卡在线| 日韩欧美二区三区| 成人一区在线看| 成人污视频在线观看| 色综合夜色一区| 日本三级亚洲精品| 成人网页在线观看| 夜夜嗨av一区二区三区四季av| 另类小说一区二区三区| 国产suv精品一区二区三区 | 在线观看视频91| 极品少妇xxxx精品少妇| 亚洲女人小视频在线观看| 日本 国产 欧美色综合| 狠狠色丁香久久婷婷综| 欧美在线一区二区三区| 亚洲成va人在线观看| 99re在线精品| **性色生活片久久毛片| 欧美三级三级三级爽爽爽| 国产精品国产成人国产三级| 成人动漫一区二区在线| 国产成人精品一区二区三区四区 | 免费看黄色91| 欧美放荡的少妇| 青娱乐精品视频在线| 欧美亚洲精品一区| 亚洲成人www| 制服丝袜亚洲播放| 亚洲一区在线观看视频| 国产精品久久看| 国产欧美在线观看一区| 男女激情视频一区| 亚洲电影激情视频网站| 国产成人小视频| 91精品国产高清一区二区三区蜜臀 | 91久久精品一区二区三| 一区二区三区在线高清| 欧美三级视频在线播放| 国产成人免费视频精品含羞草妖精| 国产日本欧洲亚洲| 色综合天天在线| 色就色 综合激情| 91麻豆精东视频| 日一区二区三区| 国产剧情在线观看一区二区| 欧美国产禁国产网站cc| 91日韩精品一区| 91精品国产综合久久久久| 日本一区二区三区dvd视频在线 | 欧美视频精品在线| 中文字幕亚洲精品在线观看| 精品国产1区二区| 国产精品久久毛片av大全日韩| 亚洲欧美区自拍先锋| 精品国产电影一区二区| 国产精品麻豆视频| 国产一区二区三区高清播放| 欧美久久久久免费| 91免费视频大全| 国产精品资源站在线| 欧美亚一区二区| 欧美一区二区三区系列电影| 国产精品伦理在线| 亚洲欧美激情插| 成人黄色一级视频| 成人黄色大片在线观看| 日韩午夜激情视频| 美国欧美日韩国产在线播放| 日韩二区在线观看| 91精品国产福利| 亚洲一二三四在线观看| 欧美人与禽zozo性伦| 成人午夜电影小说| 免费成人在线视频观看| 日韩毛片一二三区| 91视频国产资源| 国产精品系列在线| 欧美精品三级在线观看| 亚洲精品视频在线观看网站| 国产不卡视频一区二区三区| 亚洲影视资源网| 国产精品天美传媒| av不卡一区二区三区| 中文字幕国产精品一区二区| 在线电影院国产精品| 91日韩精品一区| 亚洲同性gay激情无套| 99久久精品国产一区| 日本视频一区二区| 一区二区视频免费在线观看| 精品国产免费视频| 欧美一区二区三区人| 色婷婷久久久久swag精品| 国产精品一区二区三区四区| 欧美激情在线看| 99久久久精品免费观看国产蜜| 欧美经典三级视频一区二区三区| 51精品国自产在线| 国产乱码一区二区三区| 天天av天天翘天天综合网色鬼国产| 亚洲人成网站精品片在线观看| 91看片淫黄大片一级在线观看| 国产成人精品免费视频网站| 韩日精品视频一区| 亚洲码国产岛国毛片在线| 精品污污网站免费看| 日韩av成人高清| 天天影视涩香欲综合网| 亚洲va欧美va人人爽| 天天综合色天天| 欧美国产精品中文字幕| 久久精品一区四区| 欧美极品美女视频| 国产精品久久影院| 一区二区三区在线免费| 亚洲图片自拍偷拍| 日韩精品五月天| 国产亚洲精品福利| 国产欧美一区二区精品婷婷| 国产日韩欧美精品电影三级在线| 一本高清dvd不卡在线观看| 三级欧美在线一区| 麻豆精品在线视频| 国产精品综合二区| 91丨九色丨黑人外教| 欧美精品日韩精品| 久久人人爽爽爽人久久久| 精品视频1区2区| 日韩欧美电影一区|