Skip to content

Instantly share code, notes, and snippets.

@takemyoxygen
Created May 20, 2013 14:59
Show Gist options
  • Save takemyoxygen/5612782 to your computer and use it in GitHub Desktop.
Save takemyoxygen/5612782 to your computer and use it in GitHub Desktop.
public class Repository<T> : IQueryable<T> where T : class
{
private readonly DbSet<T> _set;
public Repository(DbSet<T> set)
{
_set = set;
}
public void Add(T entity)
{
_set.Add(entity);
}
public void Delete(T entity)
{
_set.Remove(entity);
}
#region IQueryable<T> implementation
public IEnumerator<T> GetEnumerator()
{
return _set.AsEnumerable().GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return this.GetEnumerator();
}
public Expression Expression
{
get { return ((IQueryable<T>) _set).Expression; }
}
public Type ElementType
{
get { return typeof (T); }
}
public IQueryProvider Provider
{
get { return ((IQueryable<T>) _set).Provider; }
}
#endregion
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment