Was ist die beste Vorgehensweise zum Lokalisieren Ihrer ASP.NET MVC-Anwendung?
Ich möchte zwei Situationen behandeln:
- eine Anwendungsbereitstellung in IIS, die mehrere Sprachen verarbeiten würde
- Bereitstellung einer Sprache / Anwendung.
In der ersten Situation sollten Sie sich für eine Art von Ansicht entscheiden, wie ~ / View / EN, ~ / View / FI, ~ / View / SWE oder etwas anderes?
Was ist mit dem zweiten Fall, nur der anwendungsbasierten Konfiguration über Web.config und dem Verweisen dieser verschiedenen Sprachen auf verschiedene URLs?
Antworten:
Sie können auch hier einen Blick auf das vollständige Handbuch zur ASP.NET MVC 2-Lokalisierung und die ASP.NET MVC 2- Modellvalidierung mit der Lokalisierung werfen. Diese Informationen helfen Ihnen bei der Arbeit mit ASP.NET MVC 2.
quelle
Sie würden Ihre ASP.NET MVC-Anwendung ähnlich wie eine klassische ASP.NET Web Form-Anwendung lokalisieren.
Sie würden nicht für jede Sprache unterschiedliche Seiten / Ansichten verwenden, aber jede Seite würde mehrere Sprachen mithilfe von Satellitenassemblies unterstützen.
Weitere Erklärungen und Beispiele finden Sie im Blogeintrag von Matt Hawley .
quelle
Leider funktioniert der ursprüngliche Code von Matt Hawley in der Release-Version von ASP.NET MVC nicht. Schauen Sie sich einen aktualisierten Beitrag an: http://blog.eworldui.net/post/2008/10/ASPNET-MVC-Localization-via-View-Engines.aspx
Im Allgemeinen ist der Lokalisierungsprozess in der VS 2008 / ASP.NET MVC-Welt nicht so reibungslos wie bei herkömmlichen Webformularen. http://www.guysmithferrier.com/post/2009/05/Localizing-ASPNET-MVC.aspx
quelle
Schauen Sie sich Rob Connerys MvcStore-Projekt an. Er macht einen Screencast, der einen Weg zeigt, um das Globalisierungsproblem zu lösen.
http://wekeroad.com/2008/04/24/mvcstore-part-5
quelle
Ich war noch nie davon überzeugt, die Lokalisierung innerhalb eines Formulars zu handhaben, wie Elijah vorschlägt - die unterschiedlichen Längen und Richtungen können zu sehr komplexen oder unterschiedlich aussehenden Formen führen.
Ich fange gerade erst mit MVC an, aber wenn Sie die Entkopplungsmethode verwenden, möchten Sie unabhängig von der Sprache denselben Controller verwenden (Sprache nur als Ansicht behandeln) - dies würde Ihnen dann / Controller / Aktion / Sprache / Form geben
quelle
Es gibt ein gutes Tutorial mit dem neuesten Update zum Lokalisieren der asp.net mvc-Anwendung, das alle Aspekte abdeckt, einschließlich der Lokalisierung von Anzeigenamen, der Validierung, der Verwendung von Routing (Speichern des Kulturnamens in der URL), Problemen mit dem Ausgabecache usw. ... Alex Adamyan Blog - While Meine Tastatur weint sanft
quelle
Mit dem Überschreiben des DataAnnotationsMetadaDataProvider sind wir tatsächlich völlig anders vorgegangen . Dort können Sie sicherstellen, dass die DisplayNameAttribute-Werte in die richtige Sprache aufgelöst werden. Tatsächlich könnten Sie dieses Attribut sogar nur dann entfernen und nach Feldnamen auflösen, wenn dies hilfreich wäre.
quelle
Ich habe diesen Artikel vor einiger Zeit geschrieben. Es wird eine benutzerdefinierte Ansichts-Engine verwendet. http://blog.oimae.com/2011/02/20/cultured-view-engine-for-mvc/
quelle
Und noch ein Tutorial für eine andere Lösung
Lernprogramm: Erstellen Sie eine ASP.NET MVC-Lokalisierung mit Spracherkennung
quelle