The ObjectMapper .NET Project

The Relational Persistence Framework for .NET

Innovative mapping technique: Virtual Links

Let's start with a typical use case: Say, an order entry consists of quantity, product information, and customer information. Of course this represented with normalized entities, in this case OrderInfo, Customer, and Product.

Now it's a quite common demand to show a list of order entries. Needless to say that this list should present information from all three entities in one line.

The conventional way (provided by most other persistence tools) would force the developer (or the persistence tool) to query each of these related fields separately and explicitly. One might improve that by setting up a database view to denormalize the business data into one resultset. This would have to be supported by the persistence tool and it would introduce the burden of maintaining database views and perhaps even new classes for the resulting data type -- for every query.
Anyway, this would also degrade performance noticeably.

The ObjectMapper .NET is the first object persistance tool that introduces a concept to solve this problem: Virtual Links.

The ObjectMapper .NET enables developers to build views within business entities using Virtual Links.
Virtual Links instruct the ObjectMapper .NET to join values of other classes directly into the object. This technique improves performance because there is no need for subsequent queries. It also increases productivity and reduces maintenance efforts because no database view has to be maintained. All data will be loaded within one dynamically generated and efficient SQL statement.