Implementing Multilingual Applications in Microsoft .NET
page 7 of 12
by Joydip Kanjilal
Average Rating: 
Views (Total / Last 10 Days): 52863/ 85

Satellite Assemblies

An assembly is essentially a portable executable or library file containing partially compiled code for use in deployment, security and versioning in Microsoft .NET's managed environment.  The assembly is compiled into the machine language instructions by the CLR.

Satellite Assemblies are special assemblies that only contain resources and are associated with the main assembly.  Satellite assemblies are used to store compiled localized application resources.  They contain only resource data and no other code.  Satellite assemblies are used to load the data dynamically depending upon the culture of the application.  They can be created using the AL utility tool provided with Microsoft .NET SDK.  With satellite assemblies, resources are embedded in a binary format within a DLL.  This makes the resources not very visible to the user and ensures faster access.  These assemblies can be deployed even after deployment of the application.

Refer to the earlier sections where we had already created a resource file that was intended for UK English culture.  We had then compiled the same to create a compiled resource file using the resgen utility.  Now we can use the AL utility shipped with the Microsoft .NET SDK to create a satellite assembly from a compiled resource file as shown below.

Listing 10

al /t:lib /culture:en-GB /embed: Internationalization.en-GB.resources
 /out: Internationalization.resources.dll

The output file Internationalization.en-GB.resources is a satellite assembly file that is created for the en-GB locale from the compiled resource file.  The .NET Framework Developer's Guide, MSDN, states, "Ideally, you should package the resources for the default or neutral assembly with the main assembly and create a separate satellite assembly for each language that your application supports."

View Entire Article

User Comments

Title: What about localized Databases?   
Name: Rojalin
Date: 2006-09-28 6:54:50 AM
many many tx for this article
Title: Implementing Multilingual Applications in Microsoft .NET   
Name: rambabu
Date: 2006-09-12 7:22:14 AM
The article is very nice and the author explained in simple terms to understand the various aspects of Globailization and Localization.I liked this article very much.
Title: What about localized Databases?   
Name: Max
Date: 2006-09-12 4:58:25 AM
thank you very much for your article!
I have always been looking around for a standardized way of localizing db-entries. For instance if I run a web-shop which must be available to german and english customers my descriptions of my articles must be in german and english.
Of course this has to be stored in a DB and not in embedded resources.

Community Advice: ASP | SQL | XML | Regular Expressions | Windows

©Copyright 1998-2024  |  Page Processed at 2024-07-23 1:50:26 PM  AspAlliance Recent Articles RSS Feed
About ASPAlliance | Newsgroups | Advertise | Authors | Email Lists | Feedback | Link To Us | Privacy | Search