private SpellCheckResult ResultFromFlags(string text, IList <SpellingFlaggedToken> flaggedTokens) { var result = new SpellCheckResult(); foreach (var token in flaggedTokens) { result.suggestions.Add(new SpellCheckResultToken { original = token.Token, suggestion = token.Suggestions.FirstOrDefault().Suggestion, wordLocation = token.Offset }); } return(result); }
public async Task <SpellCheckResult> CheckSpellingAsync(string text) { var result = new SpellCheckResult(); result.sourceText = text; result.suggestions = new List <SpellCheckResultToken>(); var response = await _languageToolService.CheckTextAsync(text); foreach (var match in response.matches) { var token = new SpellCheckResultToken(); token.original = match.context.text; token.suggestion = match.replacements.FirstOrDefault()?.value ?? "N/A"; token.wordLocation = match.offset; token.message = match.message; result.suggestions.Add(token); } return(result); }