私は仕事で(Pythonから)elasticsearchをよく使用していますが、暇なときにやっている小さな.Netプロジェクトにそれを取り入れたいと思っていました。NuGet をざっと見てみると、Nestにたどり着きました。
「モデル」を次のように定義しています...
<ElasticType(Name:="Document")>
Public Class Document
Property UserId As Long
<ElasticProperty(IndexAnalyzer:="not_analyzed")>
Property Something As String
Property EmailAddress As String
End Class
そして、このように作成してインデックスを作成しようとしています...
Dim Ret = ES.CreateIndex(IndexName,
Function(x) x.AddMapping(Of Document)(
Function(m) m.MapFromAttributes))
If Not Ret.OK Then
With Ret.ConnectionStatus.Error
Throw New Exception(String.Format("Failed to create index ({0}): {1}", .HttpStatusCode, .ExceptionMessage))
End With
End If
そして、私は得ていますFailed to create index (BadRequest): MapperParsingException[mapping [Document]]; nested: MapperParsingException[Analyzer [not_analyzed] not found for field [something]];
私は両方を試しました
<ElasticProperty(Analyzer:="not_analyzed")>
と
<ElasticProperty(IndexAnalyzer:="not_analyzed")>
私が構築しようとしているのは、jsonに相当するものです
"something" : {"type" : "string", "index" : "not_analyzed"}
es docsに示されているように。
私は何が欠けていますか?
(弾性 0.90.6)