public static TextPropertyDescriptor <dynamic> DmpNgramAnalyzer(this TextPropertyDescriptor <dynamic> tt) { return(tt .Name(Strings.Ngrams) .Analyzer(Strings.DmpNgramAnalyzer) .SearchAnalyzer(Strings.DmpStandardEnglish)); }
public static ITextProperty TextProperty(TextPropertyDescriptor <Document> property) => property .Name(x => x.Text) .Analyzer("english_russian") .Store();
public static ITextProperty TitleProperty(TextPropertyDescriptor <Document> property) => property .Name(x => x.Title) .Analyzer("english_russian") .Boost(3);
/// <summary> /// 设置搜索分析器为 ik_smart /// </summary> /// <typeparam name="T">实体类型</typeparam> /// <param name="source">文本属性</param> public static TextPropertyDescriptor<T> SmartSearchAnalyzer<T>(this TextPropertyDescriptor<T> source) where T : class => source.SearchAnalyzer("ik_smart");
/// <summary> /// 设置分析器为 ik_max_word /// </summary> /// <typeparam name="T">实体类型</typeparam> /// <param name="source">文本属性</param> public static TextPropertyDescriptor<T> MaxWordAnalyzer<T>(this TextPropertyDescriptor<T> source) where T : class => source.Analyzer("ik_max_word");
/// <summary> /// 设置分析器为 ik_max_word,设置搜索分析器为 ik_smart /// </summary> /// <typeparam name="T">实体类型</typeparam> /// <param name="source">文本属性</param> public static TextPropertyDescriptor<T> IkAnalyzer<T>(this TextPropertyDescriptor<T> source) where T : class => source.MaxWordAnalyzer().SmartSearchAnalyzer();
public static TextPropertyDescriptor <T> AddKeywordField <T>(this TextPropertyDescriptor <T> descriptor) where T : class { return(descriptor.Fields(f => f.Keyword(s => s.Name("keyword").IgnoreAbove(256)))); }