我有一个面向多个客户的网站。有时,客户会坚持进行细微的更改。由于我无法控制的原因,无论请求多么轻微,我都必须遵守。通常这不是问题,我只需创建用户控件或页面的客户端特定版本,并在构建期间覆盖默认版本或进行配置设置来处理它。
现在我正在本地化网站,我很好奇进行细微措辞更改的最佳方式。
假设我有一个名为的资源文件Resources.resx
,其中包含 300 个资源。它有一个名为Continue
. 英文值为“Continue”,法文值为“Continuez”。
现在,无论出于何种原因,一位客户希望它说“Next”和“Après”,而其他客户则希望保持不变。满足此类请求的最佳方式是什么?(这只是一个简单的例子)。
我能想到的唯一两种方法是
- 创建另一个特定于客户端的 Resources.resx,并在构建时替换 .dll。由于我将完全替换 dll,因此新的资源文件必须包含所有 300 个字符串。明显的问题是我现在有 2 个资源文件,每个文件都有 300 个字符串要维护。
- 创建自定义用户控件/页面并将其更改为使用自定义资源文件。例如,SignIn.ascx 将在构建期间被替换,它会从而
ClientName.resx
不是从Resources.resx
.
还有什么我可以尝试的吗?有什么方法可以更改它,以便应用程序ClientResources.resx
在实际查看指定的资源文件之前始终在文件中查找覆盖的值?