以下のような wpf ソリューションがあると仮定すると、「SatAssembly」のファイル構造を見つけるにはどうすればよいですか?
- EntryAssembly
-- code files
- SatAssembly
-- GlobalizationFolder
-- en-US Folder
-- resourceDictionary.xaml
-- es-ES Folder
-- resourceDictionary.xaml
より詳しい情報
上記の例から本当に巻き上げたいのは、一連の文字列 "en-US' "es-Es" だけです
以下のコードを使用して、必要なものを取得できます。本質的にディレクトリ名を取得する簡単な方法がないかどうか疑問に思っていました。それともこれでいいのか?
var asm = Assembly.LoadFrom("SomeSatelliteAssembly.dll");
var stream = asm.GetManifestResourceStream(asm.GetName().Name + ".g.resources");
using (var reader = new ResourceReader(stream))
{
foreach (var o in reader.Cast<DictionaryEntry>())
{
// massage the keys as needed
}
}
// ** output of keys for "SatAssembly" ***
globalization/en-US/resourcedictionary.baml
globalization/es-ES/resourcedictionary.baml