Aqueduct.SitecoreLib.Search.Utilities.QueryTranslator.Translate C# (CSharp) Method

Translate() public method

public Translate ( QueryBase query ) : Query
query QueryBase
return Lucene.Net.Search.Query
      public virtual Query Translate(QueryBase query)
      {
         var fieldQuery = query as FieldQuery;
         if (fieldQuery != null)
         {
            return ConvertFieldQuery(fieldQuery);
         }

         var combinedQuery = query as CombinedQuery;
         if (combinedQuery != null)
         {
            return ConvertCombinedQuery(combinedQuery);
         }

         var fullTextQuery = query as FullTextQuery;
         if (fullTextQuery == null)
         {
            throw new Exception("Unknown query type");
         }

         Assert.IsNotNull(fullTextQuery.Query, "Full text query is empty");
         Assert.IsNotNullOrEmpty(fullTextQuery.Query.Trim(), "Full text query is empty");

         return InternalParse(fullTextQuery.Query);
      }

Usage Example

コード例 #1
0
 public virtual List<SkinnyItem> RunQuery(QueryBase query, bool showAllVersions)
 {
    var translator = new QueryTranslator(Index);
    var luceneQuery = translator.Translate(query);
    return RunQuery(luceneQuery, showAllVersions);
 }