Estoy desarrollando un sitio web multilingüe y la localización se hace principalmente mediante el uso de archivos .resx. Pero ahora necesito permitir a los usuarios con algunos permisos editar archivos de recursos en línea desde el sitio web. ¿Alguien sabe de algún componente existente para ayudar a lograr esto?Componente ASP.NET para editar archivos .resx
Respuesta
Lo mejor que puede hacer es pasar a un enfoque impulsado por DB.
Rick Strahl tiene este excelente artículo: Creating a Data Driven ASP.NET Localization Resource Provider and Editor con código fuente libre!
Incluso tiene una función Import por lo que no tiene que volver a traducir el trabajo realizado hasta el momento.
Editar: si insiste en la edición de los archivos XML, este artículo puede ayudar a: Updatable ASP.NET ResX Resource Provider – yes, it’s possible!
Creo que deberías considerar este paso una vez más. En primer lugar, los archivos resx se compilan en lugar de usarse directamente, por lo que cualquier cambio requiere la recompilación de la página *. La otra cosa es que podría ser una amenaza grave a la seguridad: permite que los usuarios modifiquen los archivos en la carpeta de la aplicación.
* - http://msdn.microsoft.com/en-us/library/ekyft91f%28VS.80%29.aspx
así que supongo que no hay manera "limpia" de acceder a los archivos .resx que no sean simplemente abrirlos estilo de "la vieja escuela", jugar un poco con el XML, y escribirlos en el sistema de archivos de nuevo. Y luego la aplicación descubrirá que se han modificado y los compilará en tiempo de ejecución. Acerca del riesgo de seguridad, los archivos .resx solo contienen cadenas de traducción, y los usuarios que los cambian necesitarán los permisos apropiados. Eso me dejó pensando, ¿podría hacerse un "ataque de inyección" insertando algún código en un archivo .resx? – Farinha
Acabo de encontrar esta aplicación Resource Blender que es similar a lo que estaba buscando:
ResourceBlender es una aplicación de traducción de código abierto e internacionalización que ofrece una manera fácil para administrar recursos localizados para la inclusión de con diferentes aplicaciones. Disponible como una aplicación web ASP.NET y una aplicación de escritorio WPF , hace que la localización de las aplicaciones sea muy fácil. ResourceBlender genera recursos localizados en diferentes formatos desde una base de datos central para su inclusión con diferentes aplicaciones .
Las principales características que se ofrecen incluyen:
- recursos de exportación a archivos .resx .NET, Java .properties, GNU .po/gettext, entidades XHTML y más.
- Importar/Exportar datos de traducción en hojas de cálculo XML para facilitar la edición.
- Usa una base de datos de traducciones para mantener las localizaciones sincronizadas.
- Admite MySQL, SQL Server y SQLite, por lo que no se requiere una base de datos externa.
- Migre desde archivos .resx o .properties existentes con un asistente de importación.
- Fácil para traductores y propietarios de proyectos/administradores.
- Fuente gratuita y de código abierto.
- Traducción automática automática con Google Translate.
- Plantillas personalizadas para formatos de recursos.
- 1. Editar archivos ASP.NET MVC 3 resx en el servidor de implementación sin recompilar
- 2. ASP.NET * .resx serialization
- 3. Archivos de recursos (RESX) estropeados
- 4. Componente del organigrama para ASP.NET
- 5. Visual Studio crea archivos inválidos de Resx
- 6. Uso de SQL para la localización en lugar de archivos RESX en ASP.NET
- 7. ¿Cómo puedo comparar múltiples archivos .resx?
- 8. ¿Necesita ayuda para editar archivos .lnk?
- 9. Ver/editar datos ID3 para archivos MP3
- 10. Flash gratuito IDE para editar archivos .fla
- 11. Editar archivos de recursos sin volver a compilar la aplicación ASP.NET
- 12. Editor de archivos .resx basado en la web?
- 13. Problemas con archivos RESX en VS2010 targeting 3.5 framework
- 14. Editar archivos jar con python
- 15. Wix: ¿un archivo por componente o varios archivos por componente?
- 16. ¿Qué ventajas tiene utilizar la localización .resx para una aplicación ASP.NET MVC?
- 17. Mejor gestor de archivos gratuito para ASP.Net
- 18. ¿Cuál es el mejor/recomendado componente CAPTCHA para ASP.NET
- 19. Obtenga valores de los archivos * .resx en XAML
- 20. Imágenes vinculadas a imágenes agregadas a archivos resx usando XAML
- 21. Archivos de Resx de código abierto/libre con frases estándar
- 22. Capturar recursos locales que faltan en archivos resx
- 23. Cómo hacer herencia de los archivos de recursos (resx)
- 24. Componente de explorador de archivos para Java swing
- 25. ¿Cómo configuro emacs para editar archivos HTML que contienen Javascript?
- 26. Crear y abrir para editar archivos inexistentes bajo el cursor
- 27. Usar Vim para editar archivos de Microsoft Word
- 28. ¿Usar GVim en Windows para editar archivos remotos de Linux?
- 29. ¿Necesito el archivo resx Designer.cs?
- 30. ¿El mejor componente de calendario/agenda asp.net?
Esas parecen excelentes soluciones. ¡Gracias! – Farinha