public virtual async Task <SpellCheckResponse> SpellCheckAsync(string text, SpellCheckModeOptions mode = SpellCheckModeOptions.None, string languageCode = "")
        {
            var qs = GetSpellCheckQuerystring(mode, languageCode);

            var response = await RepositoryClient.SendEncodedFormPostAsync(ApiKeys.BingSpellCheck, $"{ApiKeys.BingSpellCheckEndpoint}{qs}", $"Text={text}");

            return(JsonConvert.DeserializeObject <SpellCheckResponse>(response));
        }
        public virtual SpellCheckResponse SpellCheck(string text, SpellCheckModeOptions mode = SpellCheckModeOptions.None, string languageCode = "")
        {
            var qs = GetSpellCheckQuerystring(text, mode, languageCode);

            var response = RepositoryClient.SendGet(ApiKeys.BingSpellCheck, $"{ApiKeys.BingSpellCheckEndpoint}{qs}");

            var obj = JsonConvert.DeserializeObject <SpellCheckResponse>(response);

            return(obj);
        }
Beispiel #3
0
 public virtual SpellCheckResponse SpellCheck(string text, SpellCheckModeOptions mode = SpellCheckModeOptions.None, string languageCode = "")
 {
     return(PolicyService.ExecuteRetryAndCapture400Errors(
                "SpellCheckService.SpellCheck",
                ApiKeys.BingSpellCheckRetryInSeconds,
                () =>
     {
         var result = SpellCheckRepository.SpellCheck(text, mode, languageCode);
         return result;
     },
                null));
 }
Beispiel #4
0
        public virtual SpellCheckResponse SpellCheck(string text, SpellCheckModeOptions mode = SpellCheckModeOptions.None, string languageCode = "")
        {
            try
            {
                var result = SpellCheckRepository.SpellCheck(text, mode, languageCode);

                return(result);
            }
            catch (Exception ex)
            {
                Logger.Error("SpellCheckService.SpellCheck failed", this, ex);
            }

            return(null);
        }
        protected virtual string GetSpellCheckQuerystring(SpellCheckModeOptions mode, string languageCode)
        {
            StringBuilder sb = new StringBuilder();

            if (mode != SpellCheckModeOptions.None)
            {
                sb.Append($"?mode={Enum.GetName(typeof(SpellCheckModeOptions), mode)}");
            }

            if (!string.IsNullOrEmpty(languageCode))
            {
                var concat = (sb.Length > 0) ? "?" : "&";
                sb.Append($"{concat}mkt={languageCode}");
            }

            return(sb.ToString());
        }
        protected virtual string GetSpellCheckQuerystring(string text, SpellCheckModeOptions mode, string languageCode)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append($"?text={text}");

            if (mode != SpellCheckModeOptions.None)
            {
                sb.Append($"&mode={Enum.GetName(typeof(SpellCheckModeOptions), mode).ToLower()}");
            }

            if (!string.IsNullOrEmpty(languageCode))
            {
                sb.Append($"&mkt={languageCode}");
            }

            return(sb.ToString());
        }
        public async Task <SpellCheckResponse> SpellCheckAsync(string text, SpellCheckModeOptions mode = SpellCheckModeOptions.None, string languageCode = "")
        {
            StringBuilder sb = new StringBuilder();

            if (mode != SpellCheckModeOptions.None)
            {
                sb.Append($"?mode={Enum.GetName(typeof(SpellCheckModeOptions), mode)}");
            }

            if (!string.IsNullOrEmpty(languageCode))
            {
                var concat = (sb.Length > 0) ? "?" : "&";
                sb.Append($"{concat}mkt={languageCode}");
            }

            var response = await RepositoryClient.SendEncodedFormPostAsync(this.ApiKey, $"{spellCheckUrl}{sb}", $"Text={text}");

            return(JsonConvert.DeserializeObject <SpellCheckResponse>(response));
        }
 public SpellCheckResponse SpellCheck(string text, SpellCheckModeOptions mode = SpellCheckModeOptions.None, string languageCode = "")
 {
     return(Task.Run(async() => await SpellCheckAsync(text, mode, languageCode)).Result);
 }