2

単純な「19-15」を翻訳しようとすると、ソース言語の自動検出が失敗し、「Badlanguagepair」例外が発生します。

.NETの例には、GoogleTranslateAPIのある種のラッパーが含まれています。これは、Google.Apis.Translate.v2.csファイルにあります。ただし、このラッパーではソース言語を指定できません。それで、これを作る最も簡単な方法は何ですか?

最も正しい方法は、Google.Apis.Translate.v2.csを再生成することだと思います。しかし、私はそれを行う方法がわかりません。

大まかなRESTリクエストを処理することはできますが、扱いにくいように見えます。

4

3 に答える 3

4

次のスニペットのように、変換 ListRequest で Source パラメータを指定できます。

var request = service.Translations.List(srcText, input.TargetLanguage);
request.Source = "fr";
TranslationsListResponse response = request.Fetch();
于 2012-05-03T17:32:37.177 に答える
3

または、Google.Api.Translate.v2.cs で List メソッドを作成してオーバーロードすることもできます。これを元の List() メソッドの下に入力するだけです。

public virtual ListRequest List(Google.Apis.Util.Repeatable<string> q, 
                                  string source, string target)
{
    var _request = new ListRequest(service, q, target);
    _request.Source = source;
    return _request;
}

その後、あなたは呼び出すことができます

var response = service.Translations.List(srcText, "en","ru").Fetch();
于 2012-11-29T10:04:31.377 に答える
-1

私のために働いたのは次のとおりです。

var request = service.Translations.List(text, targetLanguage);
if (!string.IsNullOrEmpty(sourceLanguage))
{
        request.Source = sourceLanguage;
        request.Format = TranslationsResource.ListRequest.FormatEnum.Text;
}

var response = await request.ExecuteAsync();
于 2016-11-09T14:45:53.223 に答える