private string ConvertKqlToFql()
        {
            Dictionary <string, string> scopeLookup = GetScopeLookup(_cacheKey);
            Dictionary <string, string> managedPropertyTypeLookup = GetPropertyTypeLookup(_cacheKey);

            string scopeFilter = null;

            if (!string.IsNullOrEmpty(this.Scope))
            {
                scopeLookup.TryGetValue(this.Scope.ToLower(), out scopeFilter);
            }

            FqlHelper helper = new FqlHelper(_synonymLookup, managedPropertyTypeLookup, scopeFilter);
            var       fql    = helper.GetFqlFromKql(_query, SynonymHandling, BoostValue);

            return(fql);
        }
Esempio n. 2
0
        public void Initialize()
        {
            var synonymLookup = new Dictionary <string, List <string> >();

            synonymLookup["contoso"] = new List <string> {
                "microsoft"
            };
            synonymLookup["microsoft"] = new List <string> {
                "contoso"
            };
            synonymLookup["pepsi"] = new List <string> {
                "cola"
            };
            synonymLookup["coca cola"] = new List <string> {
                "pepsi max"
            };

            var managedTypes = new Dictionary <string, string>();

            managedTypes["size"]  = "int";
            managedTypes["write"] = "datetime";

            _helper = new FqlHelper(synonymLookup, managedTypes, null);
        }
Esempio n. 3
0
        private string ConvertKqlToFql()
        {
            Logger.Instance.Info("Converting Kql to Fql", DiagnosticsCategories.eCaseSearch);
            Dictionary <string, string> scopeLookup = GetScopeLookup(_cacheKey);
            Dictionary <string, string> managedPropertyTypeLookup = GetPropertyTypeLookup(_cacheKey);

            string scopeFilter = null;

            if (!string.IsNullOrEmpty(this.Scope))
            {
                scopeLookup.TryGetValue(this.Scope.ToLower(), out scopeFilter);
            }
            Logger.Instance.Info(String.Format("Requested Scope: {0} ; Scope Filter: {1}",
                                               this.Scope,
                                               String.IsNullOrEmpty(scopeFilter) ? "Not Found" : scopeFilter),
                                 DiagnosticsCategories.eCaseSearch);

            FqlHelper helper = new FqlHelper(_synonymLookup, managedPropertyTypeLookup, scopeFilter);
            var       fql    = helper.GetFqlFromKql(_query, SynonymHandling, BoostValue);

            Logger.Instance.Info(String.Format("Converting Kql to Fql Completed - Resulting FQL: {0}", fql), DiagnosticsCategories.eCaseSearch);

            return(fql);
        }