Skip to content


Subversion checkout URL

You can clone with
Download ZIP
C# Generic Repository for use with Entity Framework, RavenDB and more with built-in caching options.
C# PowerShell
Latest commit 92d3a4c @jtreuting jtreuting Changed from ServiceStack to StackExchange.Redis
ServiceStack started a commercial license with their newest version with
low limits on usage of the free version.  So we switch to the free
Failed to load latest commit information.
SharpRepository.AzureBlobRepository Updated AzureStorage nuget package for AzureBlobRepository
SharpRepository.AzureTableRepository AzureTableRepository use InsertOrReplace
SharpRepository.Benchmarks.Configuration Replaced Ef5Repository with EfRepository
SharpRepository.CacheRepository Ioc and IRepository<T> bug
SharpRepository.Caching.AppFabric Updated AssemblyInfo so TeamCity can control the assembly version bas…
SharpRepository.Caching.Memcached Removed release notes placeholder from nuspec file
SharpRepository.Caching.Redis Changed from ServiceStack to StackExchange.Redis
SharpRepository.Caching.WindowsAzure Updated AssemblyInfo so TeamCity can control the assembly version bas…
SharpRepository.CouchDbRepository Aggregate queries
SharpRepository.Db4oRepository Ioc and IRepository<T> bug
SharpRepository.Ef5Repository Ioc and IRepository<T> bug
SharpRepository.EfRepository Removed new() restriction from EfRepository<>
SharpRepository.InMemoryRepository Fixes #114 - Don't attempt to write to properties w/o a setter
SharpRepository.Ioc.Autofac Update Autofac nuget package to latest
SharpRepository.Ioc.Mvc Added Ioc projects for MVC and WebApi
SharpRepository.Ioc.Ninject Ninject binding extension bug fix
SharpRepository.Ioc.SimpleInjector Updated SimpleInjector nuspec file
SharpRepository.Ioc.StructureMap Remove unused non-included files from source
SharpRepository.Ioc.Unity Ioc cleanup
SharpRepository.Ioc.WebApi Added Ioc projects for MVC and WebApi
SharpRepository.Ioc.Windsor Update Windsor Castle to latest nuget package
SharpRepository.Logging Fix logging nuget package ID
SharpRepository.MongoDbRepository Aggregate queries
SharpRepository.RavenDbRepository GetMany and GetManyAsDictionary
SharpRepository.Repository GetMany and GetManyAsDictionary
SharpRepository.Samples Save sample project file in include HowToUseCaching
SharpRepository.Tests.Integration GetMany and GetManyAsDictionary
SharpRepository.Tests Changed from ServiceStack to StackExchange.Redis
SharpRepository.XmlRepository Ioc and IRepository<T> bug
packages Changed from ServiceStack to StackExchange.Redis
.gitattributes gitattributes for consistant line endings
.gitignore gitignore updates for db4o test data
CommonAssembly.cs Update assembly info Updated added note about EfRepository vs Ef5Repository
SharpRepository.sln FIxed bad merge of solution file
SharpRepository.sln.DotSettings Nuget package updates mainly for IOC stuff
license.txt Update assembly info

What is SharpRepository?

SharpRepository is a generic repository written in C# which includes support for various relational, document and object databases including Entity Framework, RavenDB, MongoDb and Db4o. SharpRepository includes Xml and InMemory repository implementations as well. SharpRepository offers built-in caching options for AppFabric, Memcached and standard System.Runtime.Caching. SharpRepository also supports Specifications, FetchStrategies, Batches and Traits.

How do I get started?

Check out the getting started guide. When you're done there, review the SharpRepository.Samples, SharpRepository.Tests.Integration and SharpRepository.Tests project for additional sample usage and implementation details.

Important EntityFramework Notice

Please use SharpRepository.EfRepository moving forward instead of Ef5Repository. Both will work with EF5 and EF6 but the naming was confusing once EF6 was released so we basically renamed the package. All updates will be made to EfRepository moving forward.

Have Questions?

Please use the google group for SharpRepository:

Something went wrong with that request. Please try again.