通過昨天的ElasticSearch 安裝,服務以及能夠啓動了,接下來就能夠開發了,找到了官網提供的API以及示例,Es 官方提供的.net 客戶端有兩個版本一個低級版本: 【Elasticsearch.Net.dll】這個dll文件官方解釋無依賴關係的客戶端,對於您如何構建和表示您的請求和相應沒有任何意見;它足夠抽象,所以全部的ElasticSearch API端點都表示爲方法,不會妨礙你構建json、reque、response 對象方式,它還帶有內置的,可配置、可覆蓋的集羣故障轉移、重試機制。html
另外一個高級版本: 【Nest.dll】 是一個高級客戶端、具備映射全部請求和響應對象的優點,附帶強類型查詢DSL,並利用特定的.Net功能,如協變結果和POCO的自動映射;Nest內部包含了Elastic.net 版本;json
而後兩個DLL文件的安裝命令以下:api
安裝ElasticSearch.net.dll命令:Install-Package Elasticsearch.Netelasticsearch
安裝nest.dll命令:Install-Package NESTide
命令運行以後,vs 會下載最新版本的dall文件,必定要注意版本號,這個就是後面的大坑,本身好不容易爬出來;ui
而後,就開始代碼編寫了,怎麼寫?難道寫個「hello,word」?NO,NO,剛接觸,沒辦法,只有去抄了,去哪裏抄,固然是官網了,官網示例:https://www.elastic.co/guide/en/elasticsearch/client/net-api/5.x/elasticsearch-net-getting-started.htmlspa
,在抄的過程當中,必定要理解並加以思考,在實際項目裏面靈活運用。.net
爲了操做方便,先弄一個Winfrom 程序,拉一個窗體,再來個按鈕,觸發個Click事件,而後,在添加引用,把剛剛下載的兩個Dll文件添加到項目中;好了,一切準備就緒,開始上菜了!3d
代碼就不貼了,都是官網示例中的代碼;htm
而後,程序就尚未運行,就報錯了,這心情,我擦,這但是剛起步,這但是徹底按照官網示例去寫的,居然報錯!!!
錯誤提示:people 沒法轉換爲 「Elasticsearch.Net.IndexRequestParameters 」
而後就各類途徑找解決方案,中午吃飯的時候還在想,這官網真坑,案例都是錯的,最後,在瀏覽官網的時候注意到一個東西,就是菜單選項。.NET API 版本號
心想,會不會跟版本號有關係,反正找不到解決方法,只有試一試了,而後又去看了下,下載的dll文件;
這下,確定了個人想法,下載的dll版本是6.4.0 的,看的官網示例是5.X 的;
而後,把官網示例切換到6.X,而後把官網代碼照着寫了一遍,而後能夠能夠成功運行了;來看下運行後的數據結果(插入數據的代碼示例);
至此,算是入門了,折騰了那麼久,必定要寫篇博客記錄下,以避免別人也遇到這種事情;