国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

LinqToHubble介紹及簡單使用步驟——LinqToHubble是對HubbleDotnet的封裝

2019-11-17 03:12:37
字體:
來源:轉載
供稿:網友

LinqToHubble介紹及簡單使用步驟——LinqToHubble是對HubbleDotnet的封裝

或許你還你知道HubbleDotnet,下面簡單對HubbleDotnet坐下介紹。

HubbleDotNet是由盤古分詞作者——eaglet 開發的一個基于.net framework 的開源免費的全文搜索數據庫組件。開源協議是 Apache 2.0。HubbleDotNet提供了基于SQL的全文檢索接口,使用者只需會操作SQL,就可以很快學會使用HubbleDotNet進行全文檢索。

HubbleDotNet可以實現全文索引和查詢、多域檢索和排序、分組統計、消重、分類、聚類、多表關聯查詢等等一系列全文檢索和數據挖掘功能。 HubbleDotNet提供開放的數據庫適配器接口,可以和各種數據庫完美整合,為各種數據庫系統附加全文檢索和數據挖掘功能。

HubbleDotNet設計了較為完善的并發控制程序,數據的增刪改查可以多線程同時并發進行,沒有任何沖突。HubbleDotNet還進行了緩存和內存管理設計,可以幫助用戶最大限度的提高查詢的效率。HubbleDotNet力爭在未來的幾年內超過Lucene.net成為.net開發環境中最受歡迎的全文檢索組件。

項目源代碼地址:http://hubbledotnet.codeplex.com/

如果你想學習實用HubbleDotNet,請看作者的博客介紹:HubbleDotNet開源全文搜索數據庫項目--技術詳解

-------------------------------------------------------------------------邪惡的分割線------------------------------------------------------------------------------

下面講述的是 scott (QQ昵稱) 對HubbleDotNet的進一步開發的 LinqToHubble。(最近更新:2014年9月12日,更新修復2個bug)

  LinqToHubble 是一個簡單實用的hubbledotnet的LINQ PRovider,支持Match、Contains匹配,支持Take、Skip分頁,支持OrderBY排序,支持多Where嵌套,簡單優化表達式 放大了長詞得分,數據也是延遲取的……快速實用步驟:

1、首先下載dll文件,并添加引用。

1).下載地址1:http://files.VEVb.com/moretry/linq2hubble.zip

2).下載地址2:http://download.csdn.net/detail/jinliang99/7910075

3).dll文件請全部添加引用,Hubble.net 的 dll為最新版本編譯的。

4).請將dictionaries 盤古分詞字典文件夾放到程序運行根目錄,或者包含著在項目中(較新則復制),其實是編譯器幫我們復制到程序運行根目錄下的。

2、在程序的配置文件內添加hubbledotnet的section,配置文件如下:

<configuration>  <configSections>    <section name="hubbledotnet" requirePermission="false" type="ZY.Search.Pro.Core.ConfigInfo, ZY.Search.Pro" ></section>  </configSections>  <hubbledotnet>    <connectionString>server=your connectionstring;uid=hubble username;pwd=hubble passWord;database=hubble database</connectionString>    <fragmentSize>200</fragmentSize>    <cacheTimeout>1000</cacheTimeout>    <commandTimeout>100</commandTimeout>    <highlighterFormatter>      <font color="red">,</font>    </highlighterFormatter>  </hubbledotnet></configuration>

注意事項:configSections 節點要在 configuration 的第一節點。 連接字符串自己替換下,沒有用戶名和密碼的可以刪除 uid=hubble username;pwd=hubble password;

3、構造自己的實體,根據自己的hubble數據表構造自己的model示例,需要添加system.data.linq.dll的引用。

using System.Data.Linq.Mapping;[Table(Name = "Member")]//hubbledotnet服務器里的表名稱public class Member{    [Column]//缺省為屬性名    public string Id { get; set; }    [Column(Name = "Name^10")]//字段權重 10 默認1    public string Name { get; set; }    [Column(Name = "Description^5")]//字段權重 5 默認1    public string Description { get; set; }    }

4、根據具體業務編寫自己的代碼:

static void Main(){    string keyWords = "關鍵詞";    DatabaseDataContext dc = new DatabaseDataContext();    var result = dc.GetTable < Member > ().Where(x =  > x.Name.Match(keyWords) || x.Description.Match(keyWords));     # region     //result = from item in result    //         where item.Name.Contains(keywords, true)  //也支持這種寫法    //         select item;     # endregion    //region 統計總數    //var count = result.Count();    foreach(var v in result.AsHighlight < Member > (keywords)) //高亮這樣用AsHighlight,不高亮您隨便    //foreach(var v in result)不高亮    {        Console.WriteLine(v.Name);    }    Console.ReadKey();}

5、哦,不好意思,作者說沒有第五步了。此文為轉載,原作者的博客地址:http://www.itrefer.com/index.php/archives/15。。。。

是不是很簡單啊,我也是初學者,我感覺很快就能上手了。

Hubble.net 1群:128951966 Hubble.net 2群:161508409 歡迎學習Hubble.net的來一起交流學習。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大丰市| 罗江县| 咸丰县| 镇江市| 临湘市| 育儿| 华宁县| 麻栗坡县| 富阳市| 乌什县| 启东市| 昌宁县| 新化县| 兴文县| 盐津县| 保靖县| 土默特左旗| 高碑店市| 白城市| 昌江| 湘潭市| 浙江省| 登封市| 通辽市| 安新县| 临清市| 高台县| 龙川县| 子洲县| 普兰店市| 聊城市| 葫芦岛市| 鄂尔多斯市| 弋阳县| 闽清县| 广平县| 鄂伦春自治旗| 瓦房店市| 长岛县| 沈阳市| 铁岭县|