public UnitOfWork(DataContext context) { this.Context = context; Users = new UserRepository(Context); ResetPasswordLinks = new ResetPasswordLinkRepository(Context); PostTypes = new PostTypeRepository(Context); Comments = new CommentRepository(Context); }
/// <summary> /// Configures the api. /// </summary> /// <param name="modelCache">The optional model cache</param> /// <param name="imageProcessor">The optional image processor</param> private void Setup(IContentServiceFactory factory, ICache modelCache = null, IImageProcessor imageProcessor = null) { cache = modelCache; var cacheLevel = (int)App.CacheLevel; Aliases = new AliasRepository(this, db, cacheLevel > 2 ? cache : null); Archives = new ArchiveRepository(this, db); Categories = new CategoryRepository(this, db, cacheLevel > 2 ? cache : null); Media = new MediaRepository(this, db, storage, cacheLevel > 2 ? cache : null, imageProcessor); Pages = new PageRepository(this, db, factory, cacheLevel > 2 ? cache : null); PageTypes = new PageTypeRepository(db, cacheLevel > 1 ? cache : null); Params = new ParamRepository(db, cacheLevel > 0 ? cache : null); Posts = new PostRepository(this, db, factory, cacheLevel > 2 ? cache : null); PostTypes = new PostTypeRepository(db, cacheLevel > 1 ? cache : null); Sites = new SiteRepository(this, db, cacheLevel > 0 ? cache : null); Tags = new TagRepository(db, cacheLevel > 2 ? cache : null); }