卫星程序集是一个包含特定区域语言的程序集,可以与主程序集一起使用。它们允许应用程序支持多种语言和文化。使用卫星程序集,我们可以轻松地本地化应用程序并为不同的语言提供资源。
卫星程序集是仅包含资源且特定于特定语言(或更准确地说是文化)的小型程序集。例如,假设我有一个名为“MyAssembly.dll”的程序集。如果我有美式英语和中国大陆的翻译,文件结构将如下所示:
MyAssembly.dll
en-US/
MyAssembly.resources.dll
zh-CN/
MyAssembly.resources.dll
.resources.dll
文件都包含项目中任何特定于文化的资源文件的数据(它们采用 FileName.culture.resx
的形式,因此如果我们谈论 Form1
资源的美国英语翻译,它将是 Form1.us-EN.resx
)。ResourceManager.GetString(string name, CultureInfo culture)
重载来覆盖此设置。卫星程序集是一个编译的库(DLL),其中包含特定于给定文化的“可本地化”资源,例如字符串、位图等。
在创建多语言UI应用程序时,您可能会使用卫星程序集。它们用于在多个文化中部署应用程序,每个文化一个卫星程序集(默认行为)