我有 2 个项目
- UI:包含我所有的表单和用户控件
- Translation:包含我用于翻译 UI 的翻译代码
Ui 项目显然需要对翻译项目的引用,因为它需要翻译。
由于我在 UI 中定义了需要特殊翻译的自定义用户控件。翻译项目需要知道类型,因此翻译也需要对UI的引用,从而导致循环依赖。
这实际上是一个问题吗?是的,我该如何最好地解决这个问题?我是否取出自定义类型并将它们放在单独的项目中?
谢谢
我有 2 个项目
Ui 项目显然需要对翻译项目的引用,因为它需要翻译。
由于我在 UI 中定义了需要特殊翻译的自定义用户控件。翻译项目需要知道类型,因此翻译也需要对UI的引用,从而导致循环依赖。
这实际上是一个问题吗?是的,我该如何最好地解决这个问题?我是否取出自定义类型并将它们放在单独的项目中?
谢谢
遵循良好实践,尤其是关注点分离,您的翻译库应该对它正在翻译的内容一无所知,只需要将文本 a 翻译成 b。
通常,这是通过一个或多个方法来完成的,该方法采用字符串的标识符和要翻译的文化。
CultureInfo ci = new CultureInfo("en-US");
var tranlated = MyTranslator.Translate("HelloWorldMessage",ci);