ASP.NET:使用混合的HTML格式本地化内容

前端之家收集整理的这篇文章主要介绍了ASP.NET:使用混合的HTML格式本地化内容前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_403_0@
在我的应用程序中,我有段落与混合的静态文本和 HTML格式和链接.我正在寻找一个良好的本地化解决方案,使资源与标记脱钩.假设我们有以下段落:
<p>Let's have a <a href="someURL">cup of coffee</a> and get <b>energized</b>.</p>

使用标准的resx解决方案迫使我将HTML标记链接目标嵌入在resx字符串中.这是坏的,因为它将标记/ CSS /应用程序结构与资源相结合.

最好的事情是拆分段落,使本地化的内容从不包含标记.在上面的例子中,我将有4个片段:
1)“我们有一个”纯文本
2)“杯咖啡”作为链接
3)“得到”为纯文本
4)“激励”为粗体文本

这个解决方案的问题是,分裂使得资源的维护成为一场完全的噩梦,加上这段段落片段的某一顺序可能不符合所有文化的语法.例如,在翻译的语言中,正确的翻译可能是

<p>Let's get <b>energized</b> with a <a href="someURL">cup of coffee</a>.</p>

我不认为我没有把资源嵌入到这个可能并不是一个巨大的交易.使用适当的标记/ CSS(span,div,id,class),我可以创建一些可以减少耦合影响的抽象.

关于链接URL我该怎么办?谢谢,

斯特凡

解决方法

不要将HTML视为“格式化”,而是将其视为结构,并将其全部保存到资源数据存储(如resx或数据库,或xml文件或其他内容)中.那么你可以不要担心段落中的一些文字.相反,您将有一些名为“paragraph_energized_with_coffee”的资源或每个区域设置的某些资源,以及用于编辑资源的任何软件将决定编辑器在每个资源内构造html的灵活性.
原文链接:https://www.f2er.com/aspnet/250499.html

猜你在找的asp.Net相关文章