Example #1
0
        /// <summary>
        /// Detects the language of the input text.
        /// </summary>
        /// <param name="textToDetect">The text to translate.</param>
        /// <returns>A task that represents the detection operation.
        /// The task result contains the id of the detected language.</returns>
        public async Task <string> DetectAsync(string textToDetect)
        {
            textToDetect = _preProcessor.PreprocessMessage(textToDetect);

            var payload = new TranslatorRequestModel[] { new TranslatorRequestModel {
                                                             Text = textToDetect
                                                         } };

            using (var request = _requestBuilder.BuildDetectRequest(payload))
            {
                var detectedLanguages = await _responseGenerator.GenerateDetectResponseAsync(request).ConfigureAwait(false);

                return(detectedLanguages.First().Language);
            }
        }