This project is read-only.


Chameleon is a set of libraries and interfaces to give developers working on lean line-of-business applications a head-start. Chameleon is not a framework, but it does create a façade around some existing frameworks, allowing them to be exchanged with one another and introducing the capability of unit testing interactions with those interfaces.

Data Access

Heavily inspired by the Repository pattern, Chameleon provides a simplified interface for both the Linq-to-SQL DataContext and Entity Framework DbContext, allowing either to be used in a code-first or model-first capacity, while also providing an in-memory context that can be used for unit-testing interactions without connecting to a database.

The IDepository interface consists of only a small number of methods and treats IQueryable<T> as a first-class object. Framework-specific concepts like EntitySets are not yet supported directly, but most relationships can be represented independent of framework using dependency injection.

Last edited Jul 25, 2011 at 2:51 PM by seanterry, version 2