Entity Framework
従来のアプリケーション開発において、オブジェクト指向プログラミングとリレーショナルデータベースの組み合わせはデファクトスタンダードとなっていた。ところが.NET Frameworkでは、長らくこのインピーダンスミスマッチを解決するための技術は提供されていなかった。.NET Frameworkを使用していた開発者の多くは時間と労力をかけて相互にマッピングするコーディングを行うか、NHibernateやiBatis.NETなどのサードパーティによるO/R(Object-Relational)ラッパーを組み合わせて効率化を図らなければならなかった。
マイクロソフトは2007年、.NET framework 3.5のリリースにこのEntity Frameworkを標準ライブラリとして組み込んだ。Entity Frameworkはデータベースのビジネス要件を満たしつつ、効率的で保守しやすいプログラムコードを記述するという双方のバランスを、O/Rマッピングとは異なるアプローチをとって解決した。 「概念モデル」というデータモデルを導入することで開発者はデータを操作するときに、より抽象化されたオブジェクト(=エンティティ)で作業ができ、従来よりコードの少ないアプリケーションの作成と保守が可能になった。