What is a satellite assembly, and how can we use it?
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Satellite assemblies are small assemblies that contain only resources and are specific to a particular language (or, more accurately, culture). For instance, say I have an assembly called “MyAssembly.dll”. If I had translations for US English and Chinese (PRC), the file structure would look like this:
Each of the
.resources.dllfiles would contain the data from any culture-specific resource files that would be in the project (they would take the form ofFileName.culture.resx, so if we’re talking about the US English translation ofForm1‘s resources, it would beForm1.us-EN.resx).As for using these files, this is done automatically by the resource manager. In the generated code for a resources file (that gives you the property-based syntax for reading a resource’s value) it uses the current UI culture, but you can override this by calling the
ResourceManager.GetString(string name, CultureInfo culture)overload.