У меня есть метод фильтрации с использованием расширений Lucene для списка Store
документов со следующей структурой:
public class Store {
public string Id { get; set; }
public string Name { get; set; }
public string Url { get; set; }
public string Address { get; set; }
public ICollection<Product> Products { get; set; }
}
public class Product {
public string Name { get; set; }
public double Price { get; set; }
}
мой метод фильтрации:
public IEnumerable<Store> Filter(string term = null)
{
var query = session.Advanced.DocumentQuery<Store>();
if (!string.IsNullOrEmpty(term))
{
var search = $"*{term}*";
var escapeQueryOptions = EscapeQueryOptions.AllowAllWildcards;
query = query
.Search(n => n.Name, search, escapeQueryOptions)
.OrElse()
.Search(n => n.Url, search, escapeQueryOptions)
.OrElse()
.Search(n => n.Address, search, escapeQueryOptions);
}
return query;
}
Теперь я хотел быразрешить фильтр по названию продукта, но я не могу понять, как это выразить с помощью lucene.