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); }
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); }
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); }