.NetクライアントとしてNestを使用してElasticSearchを使用することを学んでいます。データのインデックスを作成しながら、私は、インデックスを書き込むために定義されたモデル(タイプマッピングを)持っていない、私は私ElasticSearchネスト - インデックス名だけを照会
がクライアントにタイプ別
var settings = new ConnectionSettings(_config.Uri);
settings.DefaultIndex(_config.defaultIndexName);
_client = new ElasticClient(settings);
インデックスデータを作成するためにそれを作成するためにElasticSearchに依存しています情報
public void Index(object data)
{
var response = _client.Index(data, d => d.Type(data.GetType().Name));
if (!response.IsValid)
{
throw new InvalidOperationException(response.DebugInformation);
}
}
セイデータ型だった場合、いくつかのプロパティを持つProject
クラス
class Project
{
int Id {get; set;}
string Name {get; set;}
}
上記のインデックスデータを照会するにはどうすればよいですか。索引付け部分と検索/照会部分はシステムの完全に分離された部分であり、互いに認識していないことに注意してください。検索時に、取得できる最大のものは「Project」タイプの名前です。内部フィールドの詳細ではありません。だから、私はElasticSearchで検索クエリを実行するにはどうすればよいの流暢APIはこの
_client.Search<Project>(...)
ようなものにする必要があるだろうが、私は、一般的な何かのよう
_client.Search('project', ...)
おかげで私は