AgileFx Architecture

--- This page is under construction ---

A brief introduction to a LINQ-based ORM

Explaining LINQ in detail is beyond the scope of this document.

All LINQ queries are converted to Expression Trees by the compiler. These expression trees are evaluated by an ORM (such as Entity Framework or Linq-to-Sql) and converted into an SQL statement which is sent to the database server. Once results are returned from the database, the ORM reads each row and converts them into corresponding objects.

For example, if the database returned 100 rows of Customers, the ORM instantiates 100 Customer objects and returns it to the application.

Why is LINQ a massive advancement in Data Access?

The biggest reason why you should use LINQ is that you get compile-time validation for most of the data access code you write. This is huge, and can drastically reduce development effort and bugs.

Architecture Diagram

Query Analysis

Materialization

Object Tracking

Serialization

Caching

Parallel Queries