2017-02-10 4 views
2

Ich möchte einen Bot, der mehrere Sprachen unterstützt. Ich weiß, dass es durch Lokalisierung möglich ist. Aber ich kann keine Lösung für die Verwendung von C# finden. Es gibt einen Artikel zur Lokalisierung in Microsoft Bot Framework-Dokumenten. Es gibt ein Beispiel mit node.js. Aber ich implementiere in C#. Kann mir jemand eine Idee oder eine Referenz geben, durch die ich die Lokalisierung in C# implementieren kann?Ist es möglich, Lokalisierung in Microsoft Bot-Framework mit C# zu entwickeln?

Antwort

0

Der verbesserte FormFlow-Sandwich-Bot enthält einige C# BotFramework-Lokalisierungsdokumentationen. Es ist hier zu finden: https://docs.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-formflow-localize

Die Lokalisierung Sprache CurrentUICulture und Current durch die aktuellen Threads bestimmt wird. Standardmäßig stammt die Kultur von das Feld Sprache der aktuellen Nachricht, aber Sie können das ändern, wenn Sie wünschen. Abhängig von Ihrem Bot kann es bis zu 3 verschiedene Quellen von lokalisierten Informationen geben, einschließlich: Die eingebaute Lokalisierung für PromptDialog und FormFlow. Eine Ressourcendatei, die aus den statischen Zeichenfolgen in Ihrem Formular generiert wird. Eine Ressourcendatei, die Sie mit Strings für dynamisch berechnete Felder, Nachrichten oder Bestätigungen erstellen.

Diese Seite verweist auch auf IFormBuilder.SaveResource, das rview-Tool sowie das Multilingual App Toolkit. Diese können alle die Bot-Lokalisierung erleichtern.

+1

Ich habe das Rview-Tool zum Generieren der Ressourcendatei für den Formflow verwendet, aber die MAT für das, was es ist, verwendet und die nützlichere VS-Erweiterung namens ResXmanager verwendet, um die Ressourcenzeichenfolgen zu übersetzen. – pursang

+0

@pursang. Können Sie mir helfen, Rview Tool zu verwenden? Ich verwende den Formularfluss und möchte alle Zeichenfolgen darin lokalisieren. –

+0

@EhsanUlHaq Bitte stellen Sie eine neue Frage hier auf Stack Overflow. –

0

Um Ihren Bot vollständig zu lokalisieren, müssen Sie die Texte in

  • Formular Fluss
  • Prompt Dialog
  • Normale Nachrichten an Benutzer

Formular Fluss Lokalisierung Dokumentation zu finden ist zu prüfen, unter https://docs.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-formflow-localize.

Erstellen Sie eine Datei Resources.resx für Ihre Standardsprache für Sofortdialog und normale Nachrichten. Von dort können Sie ein weiteres Resx für andere Sprachen wie Resources.fr.resx für Französisch erstellen. Erwägen Sie die Verwendung von MAT Tool zum Generieren von Resources.fr.resx. Ändern Sie dann Ihren Code so, dass er auf diese Ressourcendateitexte anstelle von fest codiertem Text zeigt. Werfen Sie einen Blick auf https://github.com/Microsoft/BotBuilder-Samples/tree/master/CSharp/demo-ContosoFlowers#localization. Es hat die Probe, die genau das zeigt, was ich erwähnt habe.

Verwandte Themen