资源文件应该放在哪里以及粒度(application / assembly / namespace / class / ...)?
使用分层架构,可以将应用程序拆分为单独的专用程序集。一个优点是更容易管理依赖关系并确保代码不会缠绕在一起。
在应用程序范围内的重构过程中,可以将碎片拆分为单独的组件或移动到它们自己的组件中。这可能发生,因为功能已经足够成熟,可以移动到核心层,或者变得足够大,可以将其移动到自己的组件中。
在重构过程中,可能必须移动资源。根据用于分组资源的策略和正在进行的重构类型,它可能或多或少地困难。资源(字符串,图像,文件等)可以通过多种方式进行分组: - 在每个程序集的单个资源文件中, - 在程序集中每个命名空间的资源文件中, - 在每个类的资源文件中, - 在应用程序内所有程序集共享的单个程序集中, - 等等。
重构只是一项可能受所选资源分组策略影响的操作。其他操作,如资源文件中字符串的翻译也会受到影响。
哪种分组策略被认为是最佳的,为什么?
答案 0 :(得分:2)
只是在这里发表评论而不是答案,但你应该看一下:MSDN Internationalization page。
无论你对资源做出什么决定都应该记住你的结构如何与国际化合作,如果你必须走向国际化,那么如果你的结构收缩你就会遇到很大问题。
答案 1 :(得分:0)
我通常将资源绑定到程序集,但如果您不确定将来会带来什么,那么共享资源dll可能是一个很好的解决方案。