Ich entwickle eine mehrsprachige Website und die Lokalisierung erfolgt meist durch .Resx-Dateien. Aber jetzt muss ich Benutzern mit einigen Berechtigungen ermöglichen, Ressourcendateien online von der Website zu bearbeiten. Kennt jemand eine vorhandene Komponente, um dies zu erreichen?ASP.NET-Komponente zum Bearbeiten von. Resx-Dateien
Antwort
Das Beste, was Sie tun können, ist zu einem DB-orientierten Ansatz zu bewegen.
Rick Strahl hat diesen ausgezeichneten Artikel: Creating a Data Driven ASP.NET Localization Resource Provider and Editor mit freien Quellcode!
Es hat sogar eine Import-Funktion, so dass Sie die Arbeit, die bisher gemacht wurde, nicht neu übersetzen müssen.
Edit:, wenn Sie auf die Bearbeitung der XML-Dateien bestehen, kann dieser Artikel helfen: Updatable ASP.NET ResX Resource Provider – yes, it’s possible!
Ich denke, Sie sollten diesen Schritt noch einmal betrachten. Zuallererst werden Resx-Dateien kompiliert anstatt direkt verwendet zu werden, so dass jede Änderung die Neukompilierung der Seite erfordert. Die andere Sache ist, dass es eine ernsthafte Sicherheitsbedrohung sein könnte - Sie erlauben Benutzern, Dateien in Ihrem Anwendungsordner zu ändern.
* - http://msdn.microsoft.com/en-us/library/ekyft91f%28VS.80%29.aspx
Ich vermute, also gibt es keine „saubere“ Art und Weise die RESX-Dateien aus anderen Stoffen als Zugriff zu öffnen, sie nur „Old-School“ -Stil, mit der XML-rumgespielt, und sie in dem Dateisystem zu schreiben nochmal. Und dann wird die App herausfinden, dass sie geändert wurden und sie zur Laufzeit kompilieren. Zum Sicherheitsrisiko enthalten die RESX-Dateien nur Übersetzungszeichenfolgen, und die Benutzer, die sie ändern, benötigen die entsprechenden Berechtigungen. Das ließ mich wundern, könnte ein "injection attack" gemacht werden, indem man etwas Code in eine .resx Datei einfügt? – Farinha
Ich fand gerade diese Resource Blender Anwendung, die ähnlich ist, was ich suchte:
Resource ist eine Open-Source- Übersetzung und Internationalisierung Anwendung, die eine einfache Möglichkeit bietet zu lokalisierten Ressourcen für Aufnahme mit verschiedenen Anwendungen zu verwalten. Als ASP.NET Web-Anwendung Anwendung und eine WPF-Desktop Anwendung, macht es die Lokalisierung von Anwendungen ein Kinderspiel. ResourceBlender generiert lokalisierte Ressourcen in verschiedenen Formaten aus einer zentralen Datenbank für die Aufnahme mit verschiedenen Anwendungen.
Schlüsselfunktionen gehören:
- Export Ressourcen .NET RESX-Dateien, Java properties, GNU .po/gettext, XHTML Einheiten und vieles mehr.
- Importieren/Exportieren Sie Übersetzungsdaten als XML-Tabellen, um die Bearbeitung komfortabler zu gestalten.
- Verwenden Sie eine Übersetzungsdatenbank, um Lokalisierungen synchron zu halten.
- Unterstützt MySQL, SQL Server und SQLite, so dass keine externe Datenbank erforderlich ist.
- Migrieren von vorhandenen .resx- oder .properties-Dateien mit einem Importassistenten.
- Einfach für Übersetzer und Projektbesitzer/Administratoren.
- Frei und Open Source.
- Automatische Übersetzung der Maschine mit Google Übersetzer.
- Benutzerdefinierte Vorlagen für Ressourcenformate.
- 1. Öffnen von Dateien zum Bearbeiten
- 2. Verwenden von Best_in_Place zum Bearbeiten von Attributen
- 3. Generische Benutzeroberfläche zum Bearbeiten von C# -Anwendungskonfigurationsdateien
- 4. C++ Bibliotheken zum Bearbeiten von Bildern
- 5. E-Mail-Tastatur zum Bearbeiten von Text
- 6. Werkzeug zum Bearbeiten von CSS-Farbschema
- 7. Tools zum Bearbeiten von PowerPoint-Dateien
- 8. Coffeescript zum Bearbeiten von DOM mit jQuery
- 9. Zwei Zeichen zum Bearbeiten von Text
- 10. Klicken zum Bearbeiten in Silverlight
- 11. Verwenden von kdiff3 zum Bearbeiten von Diffs mit Git
- 12. Verwenden von SquareSpace zum Bearbeiten von html/css
- 13. zum Bearbeiten von TimescaleStart von MS Project mit C# .net
- 14. Verwenden von VisualStudio 2010 zum Bearbeiten von InfoPath C# -Code
- 15. Verwenden von Vim zum Bearbeiten von Microsoft Word-Dateien
- 16. Verwenden von Python-Funktionen höherer Ordnung zum Bearbeiten von Listen
- 17. Verwenden von JavaScript zum Bearbeiten von CSS-Verlauf
- 18. jqGrid Cell Editing - Doppelklick zum Bearbeiten?
- 19. bearbeiten Link funktioniert nicht zum Bearbeiten von Kommentaren in Ruby auf Schienen Blog
- 20. Verwenden Sie Perl zum Bearbeiten von HTML-Dateien
- 21. Verwenden von Netbeans und Eclipse zum Bearbeiten eines Netbeans-Projekts
- 22. .NET Windows-Steuerelement zum Bearbeiten von XML/XSL?
- 23. Öffnen Sie eine Datei zum Bearbeiten von Code
- 24. Winform Textfeld Bindung von mehreren Quellen zum Anzeigen, Bearbeiten
- 25. Berechtigungen zum Bearbeiten von bereitgestellten Dateien auf Amazon E2 (Bohnenstange)
- 26. Methoden zum hex bearbeiten von binären Dateien über Powershell
- 27. Systemadministrationsrechte zum Bearbeiten von Metadaten einer Publikation erforderlich?
- 28. Die beste Methode zum benutzerdefinierten Bearbeiten von Datensätzen in ASP.NET?
- 29. Android API zum Lesen und Bearbeiten von PDF
- 30. Cross-Plattform-Bibliothek zum Bearbeiten von Windows-Pfaden?
Das sieht nach tollen Lösungen aus. Vielen Dank! – Farinha