The ObjectMapper .NET Project

The Relational Persistence Framework for .NET

Localization Features

Locatization of your data is supported out-of-the-box by ObjectMapper .NET.

Imagine a customer object with 'Name' and 'Country'. Since there are only so many countries in the world, this is the classical example of an enumeration. It would probably be modelled by placing a property 'CountryKey' as foreign key into the customer class. The country class would hold key and value and may even be editable within the administration area of an application.

From a technical point of view this would be fine. A customer list would contain customer name and the country text (provided directly in customer using virtual links). Unfortuatelly the users of the application may live in different countries and expect the name of the country to be localized. That is, a user in London expects 'United Kingdom', 'Germany', and 'France' whereas a user from Berlin asks for 'England', 'Deutschland', and 'Frankreich'.

This can be handled by simply loading the data and telling the ObjectMapper .NET which language to use. The trick is to use a special feature of virtual links: In addition to foreign key relations virtual links support arbitrary parameters. In this case the current language would be passed as such a parameter.

Parameterized virtual links provide an elegant data localization solution.
And again: It's quite fast because the localization is handled completly within your database.