我正在开发一个多语言网站,本地化主要通过使用 .resx 文件完成。但是现在我需要允许具有某些权限的用户从网站在线编辑资源文件。有谁知道任何现有的组件来帮助实现这一目标?
3 回答
您可以做的最好的事情是转向数据库驱动的方法。
Rick Strahl有这篇出色的文章:使用免费源代码创建数据驱动的 ASP.NET 本地化资源提供程序和编辑器!
它甚至具有导入功能,因此您不必重新翻译迄今为止所做的工作。
编辑:如果您坚持编辑 XML 文件,这篇文章可能会有所帮助:Updatable ASP.NET ResX Resource Provider – 是的,这是可能的!
我认为你应该再次考虑这一步。首先 resx 文件被编译而不是直接使用,因此任何更改都需要重新编译页面*。另一件事是它可能是一个严重的安全威胁——您允许用户修改您的应用程序文件夹中的文件。
*- http://msdn.microsoft.com/en-us/library/ekyft91f%28VS.80%29.aspx
我刚刚发现这个Resource Blender应用程序与我正在寻找的类似:
ResourceBlender 是一个开源翻译和国际化应用程序,它提供了一种简单的方法来管理本地化资源以包含在不同的应用程序中。作为 ASP.NET Web 应用程序和 WPF 桌面应用程序提供,它使本地化应用程序变得轻而易举。ResourceBlender 从中央数据库生成不同格式的本地化资源,以包含在不同的应用程序中。
提供的主要功能包括:
- 将资源导出到 .NET .resx 文件、Java .properties、GNU .po / gettext、XHTML 实体等。
- 将翻译数据导入/导出为 XML 电子表格,使编辑更方便。
- 使用一个翻译数据库来保持本地化同步。
- 支持 MySQL、SQL Server 和 SQLite,因此不需要外部数据库。
- 使用导入向导从现有的 .resx 或 .properties 文件迁移。
- 对翻译人员和项目所有者/管理员来说都很容易。
- 免费和开源。
- 使用谷歌翻译进行自动机器翻译。
- 资源格式的自定义模板。