예제 #1
0
        /// <summary>
        /// Returns suggested search values given the parameters.
        /// </summary>
        /// <param name="suggestionParameters">The suggestion parameters.</param>
        /// <param name="allowedDocumentKeys">The document keys the search is allowed to include.</param>
        /// <returns>The suggested search.</returns>
        public DocumentSuggestResponse <ECADocument> GetSuggestions(ECASuggestionParameters suggestionParameters, List <DocumentKey> allowedDocumentKeys)
        {
            var client   = GetClient();
            var response = client.Documents.Suggest <ECADocument>(suggestionParameters.SearchTerm, DOCUMENT_NAME_SUGGESTER_KEY, GetSuggestParameters(suggestionParameters));

            return(response);
        }
예제 #2
0
        public SuggestParameters GetSuggestParameters(ECASuggestionParameters suggestionParameters)
        {
            var nameField = ToCamelCase(PropertyHelper.GetPropertyName <ECADocument>(x => x.Name));
            var idField   = ToCamelCase(PropertyHelper.GetPropertyName <ECADocument>(x => x.Id));

            return(new SuggestParameters
            {
                Select = new List <string>
                {
                    nameField,
                    idField
                },
                OrderBy = new List <string>
                {
                    nameField
                },
                UseFuzzyMatching = true,
                HighlightPostTag = suggestionParameters.HighlightPostTag,
                HighlightPreTag = suggestionParameters.HighlightPreTag
            });
        }
예제 #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="suggestionParameters"></param>
 /// <returns></returns>
 public Task <DocumentSuggestResponse <ECADocument> > GetSuggestionsAsync(ECASuggestionParameters suggestionParameters, List <DocumentKey> allowedDocumentKeys)
 {
     Contract.Requires(suggestionParameters != null, "The suggestion parameters must not be null.");
     return(Task.FromResult <DocumentSuggestResponse <ECADocument> >(null));
 }
예제 #4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="suggestionParameters"></param>
 /// <returns></returns>
 public DocumentSuggestResponse <ECADocument> GetSuggestions(ECASuggestionParameters suggestionParameters, List <DocumentKey> allowedDocumentKeys)
 {
     Contract.Requires(suggestionParameters != null, "The suggestion parameters must not be null.");
     return(null);
 }