1

WindowsPhone7の古い翻訳サンプルコードに取り組んでいます。

最近、 プロジェクトのこのhttp://api.microsofttranslator.com/V2/Soap.svcからLanguageServiceClientまたはトランスレーターApiをダウンロードしました。

TranslateAsyncのメソッドに変更があることに気づきました

私のページでこのメソッドを呼び出すこの古いメソッドを使用してください

_proxy.TranslateAsync(APP_ID, txtInput.Text, from.Code, to.Code);

このスローエラーメッセージ:

メソッド「TranslateAsync」のオーバーロードはありません4つの引数を取ります

私は古いサンプルコードで発見しました、それは持っています:

古いサンプルコードに存在する古い署名:

public void TranslateAsync(string appId, string text, string from, string to) {
    this.TranslateAsync(appId, text, from, to, null);

しかし、この最近の翻訳者APIの新しい署名はこれです:

 public void TranslateAsync(string appId, string text, string from, string to, string contentType, string category) {
     this.TranslateAsync(appId, text, from, to, contentType, category, null);
 }

この新しい署名をどのように使用しますか?contentTye、カテゴリとは何ですか?これらの情報またはこれらを使用するサンプルコードはどこで入手できますか?

助けてください。ありがとう

4

2 に答える 2

1

Microsoft Translator サービスのデベロッパー センターは次のとおりです: http://www.microsofttranslator.com/dev/ここにあるドキュメントを提供します: http://msdn.microsoft.com/en-us/library/ff512423.aspx . Translateメソッドのドキュメントでは、contentTypeパラメータを使用して提供されたコンテンツの形式を指定し、値"text/plain"または"text/html"を受け入れることが示されています。HTML を指定する場合、HTML は整形式でなければなりません。categoryパラメーターは、1 つの値、generalをサポートします。

于 2011-03-08T11:43:45.080 に答える
0

あなたの質問に対する直接的な回答ではありませんが、SOAP サービスの代わりに REST API を翻訳サービスに使用する方が簡単な場合があります。この API は、直接 HTTPWebRequest を使用するか、Hammock などの REST クライアント ライブラリを使用して呼び出すのが非常に簡単です。

この Ruby スクリプトでこの API を使用しましたhttp://script.iron7.com/#/Script/Detail?scriptId=46ea32cd1aa4436fa7089d70722f7de8&userLowerCaseName=stuart (また、アプリでhttp://www.wp7comp.com/translate-a -bull-get-multilingual-get-bovine/ )

生成された SOAP に対してではなく、生の HTTP REST に対してコーディングする方が簡単であることがわかりました。たとえば、Translate は次のようになります。

http://api.microsofttranslator.com/V2/Http.svc/Translate?appId=YOUR_KEY&from=from+lang&to=to+lang&text=what+you+want+to+translate
于 2011-03-08T12:30:25.513 に答える