原谅我的新手,因为我是 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; }
}
感谢帮助!