💡
原文英文,约1500词,阅读约需6分钟。
📝
内容提要
Umbraco的翻译功能允许定义可重用的文本片段,从而简化内容编辑。文章提出将翻译责任从服务层转移到Razor视图,避免对UmbracoHelper的依赖。通过引入强类型模型并区分静态文本与可翻译文本,实现了更清晰的代码结构。
🎯
关键要点
- Umbraco的翻译功能允许定义可重用的文本片段,简化内容编辑。
- 文章建议将翻译责任从服务层转移到Razor视图,避免对UmbracoHelper的依赖。
- 通过引入强类型模型,区分静态文本与可翻译文本,实现更清晰的代码结构。
- 服务类处理多个责任,包括生成链接模型和翻译标签,导致代码复杂。
- 通过引入强类型模型Label,替换字符串值,简化服务层代码。
- 将静态文本与可翻译文本分离,使用多态性来区分两者。
- 通过更新服务层代码,完全去除对Umbraco字典的依赖。
- 在Razor视图中使用扩展方法,将Label转换为文本,保持代码简洁。
- 使用CustomViewPage类,自动翻译字典键,简化Razor视图中的翻译过程。
- 最终实现了逐步去除Umbraco翻译依赖的模型,提升了代码的可维护性。
➡️