Free Databases in the Window Azure Marketplace: Listing 1.
Accessing the Microsoft Translator Data Feed via fixed query.
'Custom class to obtain the needed Windows Azure Marketplace CustomerID and AccessKey
Dim Credentials = New AzureMarketplaceCredentials
'Credentials required to access any Windows Azure Marketplace data feed, even free ones
If (Credentials.CustomerID.Length > 0 AndAlso Credentials.AccessKey.Length > 0) Then
'The Service Uri is provided by each data feed under the Detail tab at the bottom of the page
Dim ServiceUri = New Uri(My.Settings.ServiceURI_BingTranslator)
'The TranslatorContainer was converted from the provided C# class on the data feed page
Dim BingService = New AzureMarketplaceVB.BingTranslator.TranslatorContainer(ServiceUri)
BingService.Credentials = New System.Net.NetworkCredential(Credentials.CustomerID, Credentials.AccessKey)
'Translate to Spanish from English.
'Language codes can be found at: http://go.microsoft"/?linkid=9783676
Dim Translation = _
BingService.Translate("Good Morning. Today will be a beautiful day", "es", "en")
'Convert result from a DataServiceQuery to a more usable List() object
Dim Result = Translation.ToList()
'The translated text will be a single string in Result(0)
. . . . . .
Public Function Translate(ByVal [Text] As String, ByVal [To] As String, ByVal From As String) _
As DataServiceQuery(Of Translation)
Dim query As DataServiceQuery(Of Translation) = _
query = query.AddQueryOption("Text", ("’" & Uri.EscapeDataString([Text]) & "’"))
query = query.AddQueryOption("To", ("’" & Uri.EscapeDataString([To]) & "’"))
query = query.AddQueryOption("From", ("’" & Uri.EscapeDataString(From) & "’"))
Joe Kunk is a Microsoft MVP in Visual Basic, three-time president of the Greater Lansing User Group for .NET, and developer for Dart Container Corporation of Mason, Michigan. He's been developing software for over 30 years and has worked in the education, government, financial and manufacturing industries. Kunk's co-authored the book "Professional DevExpress ASP.NET Controls" (Wrox Programmer to Programmer, 2009). He can be reached via email at [email protected].