资源文件似乎伟大的本地化的标签和消息,但他们是完美的?

例如:

  1. 是否有更好的解决方案,如果有大量的资源?像100 000名字符串中的一个。另文件?(从理论上讲,我实际上没有这个问题)
  2. 这是一个很好的存储方法的其他类型的数据,如图像、图标、音频文件、定期文件,等等?
  3. 它是一个最佳做法储存你的.另文件中的一个独立的项目更容易更新/编写?
  4. 是否有任何其他问题你行进时使用。另文件吗?
有帮助吗?

解决方案

1.是否有更好的解决方案,如果有大量的资源?像100 000名字符串中的一个。另文件?(从理论上讲,我实际上没有这个问题)

我已经使用露天作为一种替代内容存储库Java项目。另文件,从一个维护保养角度来看(由于编码问题,我猜)可真臭。

2.这是一个很好的存储方法的其他类型的数据,如图像、图标、音频文件、定期文件,等等?

我已经看到了它的工作与图像...但就是这样。(不一定与其他媒体/文件)

3.它是一个最佳做法储存你的.另文件中的一个独立的项目更容易更新/编写?

我不要,但你可以编辑一个另上的文件直播现场,然后编辑将通过,我相信。当然这就是它的工作方式在发展中的(除了全球另,我想)

4.是否有任何其他问题你行进时使用。另文件吗?

除了是真的讨厌以维持,而事实上,visual studio不提供最巧妙的工具,用于与他们合作...没有。

其他提示

我最近使用的一个。另文件与5万字符串(正常长度,这样的句子),编制在不同的DLL约1GB。它仍然有效,现在蔚蓝的网项目。

负载时间是未知的,也许几秒钟,因为它总是可以分阶段的,我从来没有注意到了这一点。

我们一直在使用资源上的文件相对较大。净Windows形式应用程序(超过500多种形式,大约20个资源串每形式)和我们没有性能有关的问题的资源。另文件。我们有用Babylon.NET 作为一个工具,用于管理的翻译(拥有一个免费版本,只是为翻译).你并没有说明如果项目将网或桌面应用程序。一功能的资源文件提供的桌面应用程序的能力也地控制位置和大小,这恕我直言,是不可能使用其他工具(除非你是用什么喜欢DevExpress局控制其具有自动调整大小).

我有两个问题的资源文件,这两个有关性能 翻译员 (人),而不是速度串查找。

销售工作人员的监督办公室 那有没有翻译人员不可能 应付编辑XML或学习的任何 新的工具。

所以他们只是使用Excel编辑的翻译。因此,我们可能以及具有储存的已翻译的字符串为CVS文件,因此避免复制已翻译的字符串入的资源文件。

一个新的建立需要做以 需要效果的任何翻译。

再次,如果翻译的字符串被储存作为一个CSV文件,我们可以缓存在ASP.NET 高速缓存。然后的任何变化的翻译就会出现在下一页上的负荷。


所以我们可以使用定制实现的资源提供商和保持标准ASP.NET 资源的查找系统。或者只是忽略的标准资源的查找系统,如果它不会帮助你的情况–这取决于您的网页的编写。


你可能会发现在某一点,你的愿望能够复盖字符串 单个客户, ,如果是的话,你会需要一个多级的查找系统。否则,必须合并的客户的定义的字翻译的字符串每一次你的船一个新版本的系统。

点#4.
我已经使用。另文件的所有弦在我们的网站,必须本地化成多种文字并没有任何重大问题。

一件事,你需要考虑的是如果你想要这个文本搜索。对于一些网站上有一些局部的资源,需要搜索所以我必须留在他们的数据库。然而,当我选择我喜欢的.另文件,用于类似的原因,以上提到。

我将简单地添加的,你应该看看定义的实现(或者你自己的)的资源提供者(提供者模型等的成员资格提供)储存你的力资源数据库。这就是我们为我们的CMS,这是非常有用的。

当我们第一个看着一个例子回来然后我们发现 创建一个数据驱动的ASP.NET 本地化资源的提供者和编辑器.

这里是我的拿上资源文件:

  1. 我们认为,如果有大量的串,使用一个数据库可能是最好的方法,以允许用于搜索和分类的数据。它可能不会太难以考虑到多种语言中的一种资源表,和速度最快。

  2. 我认为这是一个很好的方法,用于储存静态资源,或事情可能会改变一个客户。如对动态的资源,它可能是更好地使用数据库,无论是单独或结合文件系统。我认为,在新SQL服务器上有一个新的类型,是一个最佳混合使用数据库和文件系统。

  3. 我在另外一个问题(不知道多大),使用的资源文件中的外部项目是一个很好的做法,因为你不需要重新编译整个项目时,资源变化。只是重新编译资源的项目。这也将允许对(相当)简单的编辑将通过客户,在那里他们将只需要"源代码"的资源的项目,并不是你的其他实代码(API代码,等等)。

  4. 我没有使用的资源文件足以使任何声称有关他们的可靠性,可扩展性,或任何潜在的问题,你可能有时与他们合作。

从来没有看到任何问题与另资源,他们正在缓存的完美。我们有使用它们在它,asp.net 视,wpf,等等。

有一件事你应该做的是使用微软的垫子(多种语言的应用工具包)的扩展Visual Studio.

你可以控制你的翻译、出口它们发送给笔译员(例如不是锁定的翻译),将它们导和再次证实他们或对此发表评论,回收现有的翻译(节省很多时间!)

和它的工作与行业标准xlf格式!

如果你签了蔚api你甚至可以自动翻译资源(你有几千言万语免费的每月信贷、客户).参见: https://multilingualapptoolkit.uservoice.com/knowledgebase/articles/1167898-microsoft-translator-moves-to-the-azure-portal

你甚至可以看到有多少工作已经完成的项目:

enter image description here

哦,它带有一个方便的编辑,你的翻译也可以使用的!

enter image description here

开始:

  1. 安装垫Visual Studio扩展
  2. 去你的项目在Visual Studio
  3. 击性-->开放的程序集信息.cs
  4. 添加这一特性:[大会:系统。资源。NeutralResourcesLanguage("en")]
  5. 选择项目中的方案资源管理器,并在Visual Studio[工具]-->[多种语言的应用工具包]-->[使选择]
  6. 这将增加一个新的文件夹"MultilingualResources"你的项目
  7. 正确的点击鼠标项目-->[多种语言的应用工具包]-->[添加翻译的语言...]-->选择你想要的语言翻译(例如荷兰).
  8. 在"MultilingualResources"文件夹,你会看到一个新文件"。...nl。xlf",双击它时,它将打开与多种语言编辑器。 (如果不正确的点击鼠标和变化的默认"开放"的多语文编辑)

现在你只能添加到默认的串的资源。另文件(文件的语言应该是一样的"NeutralResourcesLanguage"你的加入程序集信息.cs。翻译你不添加串...nl。另文件,你的工作。xlf文件,位于MultiLingualResources文件夹。

(以后你已经做了大量的翻译,一个重建可能是必要的,这样的翻译。xlf文件更新的翻译。另文件)

从哪里得到它:

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top