在PRISM(wpf)中模块之间共享通用资源

3

如何在模块之间共享资源(例如图片...)最好的方式是什么?是将其保留在单独的通用项目(基础设施?)中,并在所有模块和应用程序中引用它,还是其他更好的方式?


1
与其他选项相比,如将资源保留在各自的模块项目中(同一资源可能会在不同的模块中重复使用-优点是模块可以完全自包含),这种方法更好。虽然存在权衡,但哪种选项更推荐呢? - Jimmy
可能是最佳实践WPF Prism资源的重复。 - Magnus Johansson
2个回答

2

我的建议是,如果一个资源是共享的,那么将该资源放在基础设施项目中。

我通常会在基础设施项目中创建一个“Resources”文件夹,接下来是:

Resources/Constants.xaml (Brushes, etc.)
Resources/Images/
Resources/Templates/
Resources/Converters/
Resources/Behaviours

1

我相信在任何项目中,您都应该尝试组织资源以最小化重复。重复不仅会在运行时消耗系统资源,而且还会使应用程序更难维护。例如,如果您更改程序中的图标,则必须找到它们并进行更改。随着您的程序变得越来越大,这种重构工作将开始占用您的时间。

现在我已经阐明了这一点,您可能可以想象出需要一定程度的重复的情况。主要原因是本地化,应用程序字符串可能是一种语言或另一种语言,或者美式英语短语可能与英式英语短语不同。某些文化中的特定图标也可能在其他文化中意味着不同的东西,但这完全取决于您的应用程序。

我建议您尽可能保持简约和有组织,并在应用程序需要时扩展。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接