Skip to content

Using the Multilingual App Toolkit with the Microsoft Translator service from Azure’s Cognitive Services

Image courtesy of M. Adiputra via Wikimedia Commons

The Multilingual App Toolkit (MAT) is a great tool for managing your localization workflow with Visual Studio projects.  One of the features is the ability to machine translate your string resources into another language.  You would not want to ship an application that was machine translated, but it provides a jumping off point for the actual translators that will work on your text.  When it was originally released, MAT included support for the Microsoft Translator service,  It just worked right out of the box.

Back in April (2017), the Microsoft Translator service that was part of Microsoft Datamarket was retired.  The replacement is part of Cognitive Services and is hosted in Azure.  The Multilingual App Toolkit (MAT) was using the Microsoft Translator service as the default translation provider for doing machine translations.  If you are using MAT to manage your language resource files and wish to use Microsoft’s translation services, you’ll need to make some changes.  They are documented here, but I’ll mirror the text.

Make sure that you have the latest version of MAT installed.  For VS 2017, you’ll need 4.0.6810.0 as the minimum version.  For VS 2015 or 2013, you’ll need 4.0.180.0 as the minimum version.

Then, you’ll need an Azure subscription.  When you use the Translator Text API, you can pick from a number of pricing plans.  The free plan lets you translate 2 million characters a month, but does not allow overages.  The next plan charges  $10/month per million characters. And it moves up from there.  For most projects, the free tier should be sufficient

You can sign up for an Azure account at http://azure.com.  You’ll need a credit card, but you wont be charged unless you go beyond the free plans.

Once you have an Azure account, sign in to the portal and click the New button.

Type “Translation” into the “Search the marketplace” entry field.  Then select the Translator Text API.

Click the Create button

Select the free pricing tier and fill out the rest of the fields and then press the create button.

Click on image for larger version

After Azure deploys the service, it will take you to the service page.

Under “Resource Management”, click “Keys”.  Copy the value for “Key 1”.  This will be the authorization key that enables MAT to use the translation services.  Azure defines two keys, Key 1 and Key 2.  They will both work.  If you plan on sharing the service to let other people translate your code, you can revoke the key at a later date.

Open the Credential Manager in Windows.  The easiest way to launch this is to press the Windows key or Start Menu button and then start typing “Credential”.  You should see the app in the list of matching items

Select “Windows Credentials”

Click “Add a generic credential” and then fill in the fields.

For Internet or network address, enter Multilingual/MicrosoftTranslator

For User name, enter Multilingual App Toolkit

For Password, enter the authorization key that you copied from Azure.

If you copied and pasted the text, make sure that the text does not have trailing spaces at the end.

Click the OK button.

Entering the Azure key as a generic credential

Once you have added the credentials, the Multilingual App Toolkit editor will now use the translation services from Azure.