Microsoft Translator(Windows Azure)から翻訳されたテキストの解析に問題があります。ここからの例に従いましたが、翻訳されたテキストをVS XAMLテキストボックスに表示しようとすると、出力はSystem.Data.Services.Client.QueryOperationResponse`1[Microsoft.Translation]になります。
送信されたクエリは正しいですが、ブラウザ内で入力すると、画面に翻訳が返されません(「翻訳」というテキストと送信された時刻が表示されるだけです)が、ページソースは正しい翻訳のXMLドキュメントを提供しますText
タグ内。
これは私のC#コードです:
var serviceRootUri = new Uri("https://api.datamarket.azure.com/Bing/MicrosoftTranslator/");
var accountKey = "correct account key";
TranslatorContainer tc = new TranslatorContainer(serviceRootUri);
tc.Credentials = new NetworkCredential(accountKey, accountKey);
var translationQuery = tc.Translate(NameInput.Text, "en", "es");
textBox1.Text = translationQuery.Execute().ToString();
ページソース(XML出力):
> <feed xmlns:base="https://api.datamarket.azure.com/Data.ashx/Bing/MicrosoftTranslator/Translate"
> xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"
> xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"
> xmlns="http://www.w3.org/2005/Atom">
> <title type="text" />
> <subtitle type="text">Microsoft Translator</subtitle>
> <id>https://api.datamarket.azure.com/Data.ashx/Bing/MicrosoftTranslator/Translate?Text='Mundo'&To='en'&From='es'&$top=100</id>
> <rights type="text" />
> <updated>2012-04-18T10:02:42Z</updated>
> <link rel="self" href="https://api.datamarket.azure.com/Data.ashx/Bing/MicrosoftTranslator/Translate?Text='Mundo'&To='en'&From='es'&$top=100"/>
> <entry>
> <id>https://api.datamarket.azure.com/Data.ashx/Bing/MicrosoftTranslator/Translate?Text='Mundo'&To='en'&From='es'&$skip=0&$top=1</id>
> <title type="text">Translation</title>
> <updated>2012-04-18T10:02:42Z</updated>
> <link rel="self" href="https://api.datamarket.azure.com/Data.ashx/Bing/MicrosoftTranslator/Translate?Text='Mundo'&To='en'&From='es'&$skip=0&$top=1"/>
> <content type="application/xml">
> <m:properties> <d:Text m:type="Edm.String">World</d:Text> </m:properties>
> </content>
> </entry>
> </feed>
ここ、ここ、ここ、およびLinqの適合コードに従って、XMLから翻訳されたテキストを抽出しようとしましたが、保存されていないファイルからは読み取れません。非推奨のBingトランスレータを使用して、XElement.Parse(translatedText).Value
コマンドを使用して解析されたテキストを取得できましたが、現在は機能していません。このドキュメントから読み取る方法(ページソースから解析する方法)、または翻訳されたテキストを取得する他の方法はありますか?