2010-11-05 188 views
2

我有2個項目循環依賴

  • UI:包含我的一切形式和用戶控制
  • 翻譯:包含用於翻譯UI

的UI我的翻譯代碼項目顯然需要參考翻譯項目,因爲它需要翻譯。

由於我在UI中定義了需要特殊翻譯的自定義用戶控件。翻譯項​​目需要知道類型,因此翻譯也需要參考UI導致循環依賴。

這實際上是一個問題,是的我該如何解決這個問題?我是否拿出自定義類型並將它們放在一個單獨的項目中?

感謝

回答

3

好的做法,特別是sepatation of concerns,您的翻譯庫應該一無所知什麼它翻譯,只知道它需要文本轉換到b中。

通常,這是通過一種方法或方法完成的,該方法或方法爲字符串和要轉換的文化提供標識符。

CultureInfo ci = new CultureInfo("en-US"); 
var tranlated = MyTranslator.Translate("HelloWorldMessage",ci);