Skip to content

Instantly share code, notes, and snippets.

@lindstromhenrik
lindstromhenrik / NestedFacetExtensions.cs
Created April 12, 2016 08:41
NestedFacetExtensions. Extensions to the Find nested facets API
public static class NestedFacetExtensions
{
// Allow passing Action<NestedTermsFacetRequest> facetRequestAction (in order to set for example Size on the request)
public static ITypeSearch<TSource> TermsFacetFor<TSource, TListItem>
(this ITypeSearch<TSource> search,Expression<Func<TSource, IEnumerable<TListItem>>> nestedFieldSelector,
Expression<Func<TListItem, string>> itemFieldSelector,
Expression<Func<TListItem, Filter>> filterExpression = null,
Action<NestedTermsFacetRequest> facetRequestAction = null)
{
var facetFilter = NestedFilter.Create(search.Client.Conventions, nestedFieldSelector, filterExpression);
@lindstromhenrik
lindstromhenrik / gist:30391262cf166a07f451
Last active November 15, 2018 08:59
NestedTermsFacetExtensions for EPiServer Find
public static class NestedTermsFacetExtensions
{
public static ITypeSearch<TSource> NestedTermsFacetFor<TSource, TEnumerable>(
this ITypeSearch<TSource> search,
Expression<Func<TSource, IEnumerable<TEnumerable>>> enumerableFieldSelector, Expression<Func<TEnumerable, string>> itemFieldSelector)
{
return search.AddNestedTermsFacetFor(enumerableFieldSelector, itemFieldSelector, null);
}
public static ITypeSearch<TSource> NestedTermsFacetFor<TSource, TEnumerable>(