私は ElasticSearch と NEST の両方に慣れていないので、初心者であることを許してください。実装中の .NET ソリューションで ElasticSearch を評価するためのプロトタイプに取り組んでいます。プロトタイプはコンパイルされ、検索しているように見えますが、結果が正しく返されません。小文字のみのいくつかのキーワードの結果のみを返し、他のものは無視して何も返しません。クエリに何か問題があると思います。クエリ部分は次のとおりです (接続情報とデフォルトのインデックスが指定され、構築されていると仮定します)。
// string searchString to be searched against ProductName and Description fields.
var searchResults = client.Search<Product>(s=>s
.From(0)
.Size(100)
.Query(q=>q.Term(p=>p.ProductName, searchString) ||
q.Term(p=>p.Description, searchString)
));
必要に応じて、モデルを次に示します。
[ElasticType(IdProperty = "ProductID")]
public class Product
{
[ScaffoldColumn(false)]
[JsonIgnore]
public int ProductID { get; set; }
[Required, StringLength(100), Display(Name = "Name")]
public string ProductName { get; set; }
[Required, StringLength(10000), Display(Name = "Product Description"), DataType(DataType.MultilineText)]
public string Description { get; set; }
public string ImagePath { get; set; }
[Display(Name = "Price")]
public double? UnitPrice { get; set; }
public int? CategoryID { get; set; }
[JsonIgnore]
public virtual Category Category { get; set; }
}
助けてくれてありがとう!