Light weight Entity Framework Code First Business object base class that acts as a logic container for an entity DbContext instance.

Subclasses of this business object should be used to implement most data related logic that deals with creating, updating, removing and querying of data use EF Code First.

The business object provides base CRUD methods like Load, NewEntity, Remove that act on the specified entity type. The Save() method uses the EF specific context based SaveChanges which saves all pending changes (not just those for the current entity and its relations).

These business objects should be used as atomically as possible and call Save() as often as possible to update pending data.