02/10/2018, 11:41

[C# - VB.NET] Hướng dẫn sử dụng Bing Translator API dịch các tiếng việt sang tiếng anh

Xin chào các bạn trẻ, bài viết hôm nay, mình sẽ tiếp tục hướng dẫn các bạn viết một ứng dụng dịch ngôn ngữ, sử dụng dịch vụ services SOAP của Bing Translator API . Các bạn chắc không còn xa lạ với thằng Google Translate, nhưng nếu muốn sử dụng ...

Xin chào các bạn trẻ, bài viết hôm nay, mình sẽ tiếp tục hướng dẫn các bạn viết một ứng dụng dịch ngôn ngữ, sử dụng dịch vụ services SOAP của Bing Translator API.

Các bạn chắc không còn xa lạ với thằng Google Translate, nhưng nếu muốn sử dụng google translate api thì chúng ta sẽ phải mất phí.

Nên trong bài viết này, mình hướng dẫn các bạn sử dụng dịch vụ Translate khác của Bing (Microsoft).

Dưới đây là demo ứng dụng dịch các loại ngôn ngữ sang tiếng anh.

Bing Translator c#

Hướng dẫn sử dụng:

Đầu tiên các bạn cần import thư viện Services SOAP Bing API

translator c#

Tiếp theo, các bạn nhập đường dẫn vào services References với địa chỉ sau: http://api.microsofttranslator.com/V1/SOAP.svc và đặt tên cho Namespace là TranslatorService như hình bên dưới.

translator c# vb.net

Tiếp theo các bạn mở file app.config với nội dung như sau.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_LanguageService" closeTimeout="00:01:00"
            openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
            allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
            maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
            messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
            useDefaultWebProxy="true">
          <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
              maxBytesPerRead="4096" maxNameTableCharCount="16384" />
          <security mode="None">
            <transport clientCredentialType="None" proxyCredentialType="None"
                realm="" />
            <message clientCredentialType="UserName" algorithmSuite="Default" />
          </security>
        </binding>
      </basicHttpBinding>
    </bindings>
    <client>
      <endpoint address="http://api.microsofttranslator.com/V1/Soap.svc"
          binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_LanguageService"
          contract="TranslatorService.LanguageService" name="BasicHttpBinding_LanguageService" />
    </client>
  </system.serviceModel>
</configuration

Viết source code C# cho nút Translator:

string strTranslatedText = null;
        try
        {
         TranslatorService.LanguageServiceClient client = new TranslatorService.LanguageServiceClient();
         client = new TranslatorService.LanguageServiceClient();
         strTranslatedText = client.Translate("your App ID", txtTraslateFrom.Text, "", "en");
         txtTranslatedText.Text = strTranslatedText;
        }
        catch (Exception ex)
        {
         MessageBox.Show(ex.Message);
        }

Source code VB.NET

Private Sub btnTranslate_Click(ByVal sender As Object, ByVal e As EventArgs)
      Dim strTranslatedText As String = Nothing
            Try
             Dim client As New TranslatorService.LanguageServiceClient()
             client = New TranslatorService.LanguageServiceClient()
             strTranslatedText = client.Translate("your App ID", txtTraslateFrom.Text, "", "en")
             txtTranslatedText.Text = strTranslatedText
            Catch ex As Exception
             MessageBox.Show(ex.Message)
            End Try
End Sub

DOWNLOAD SOURCE

Tags: apiwin32
0