【发布时间】:2010-12-16 09:04:43
【问题描述】:
出于 Wpf 中的本地化目的,我想遍历程序集中的所有 ResourceManager。
我想这样做的原因是我有一个翻译 xaml 标记扩展。此标记扩展需要使用完全限定的命名空间和程序集名称来实例化 ResourceManager。
默认程序集是xaml文件所在的程序集,检索方式如下:
var rootObjectProvider = serviceProvider.GetService(typeof(IRootObjectProvider)) as IRootObjectProvider;
var root = rootObjectProvider.RootObject;
var assembly = ass = Assembly.GetAssembly(root.GetType());
当给定相对路径时,需要预先添加默认路径,但这是 VS 的事情,而不是组装的事情。大多数程序集与默认命名空间具有相同的名称,但情况并非总是如此。因此,我想循环访问程序集中的所有 ResourceManager,并尝试将其命名空间的最后一部分与提供给标记扩展的字典路径相匹配。
【问题讨论】:
标签: .net xaml localization assemblies resourcemanager