예제 #1
0
        public ApiBooksModule(IBookStoreRepository repository) : base("/api/books")
        {
            _repository = repository;

            Get["/", true] = async(p, ct) =>
            {
                var model = await _repository.GetBooksAsync(includeTags : true);

                return(new JsonResponse(model, new DefaultJsonSerializer()));
            };
            Get["/{id}", true] = async(p, ct) => new JsonResponse(await _repository.GetBookByIdAsync(p.id, true), new DefaultJsonSerializer());

            Post["/", true] = async(p, ct) => await AddOrUpdateBook();

            //This is used for updates
            Put["/", true] = async(p, ct) => await AddOrUpdateBook();

            Delete["/{id}", true] = async(p, ct) =>
            {
                _repository.DeleteBookById(p.id);
                await _repository.SaveChangesAsync();

                return(new JsonResponse(new { success = true }, new DefaultJsonSerializer()));
            };
        }
예제 #2
0
 public BookController(IBookStoreRepository <Book> BookRepossitory, IBookStoreRepository <Author> AuthorRepos
                       , IHostingEnvironment Hosting)
 {
     bookRespo   = BookRepossitory;
     authorRepos = AuthorRepos;
     hosting     = Hosting;
 }
예제 #3
0
 public BookController(IBookStoreRepository <Book> bookRepository,
                       IBookStoreRepository <Author> authorRepository,
                       IHostingEnvironment hosting)
 {
     this.bookRepository   = bookRepository;
     this.authorRepository = authorRepository;
     this.hosting          = hosting;
 }
예제 #4
0
 public BookController(IBookStoreRepository <Book> _bookRepository,
                       IBookStoreRepository <Author> _authorRepository,
                       IWebHostEnvironment _hosting)
 {
     this.bookRepository   = _bookRepository;
     this.authorRepository = _authorRepository;
     hosting = _hosting;
 }
예제 #5
0
 public IBookStoreRepository <Book> GetRepository()
 {
     if (bookRepository == null)
     {
         bookRepository = new BookRepository();
     }
     return(bookRepository);
 }
 public AuthorCollectionsController(IBookStoreRepository courseLibraryRepository,
                                    IMapper mapper)
 {
     _courseLibraryRepository = courseLibraryRepository ??
                                throw new ArgumentNullException(nameof(courseLibraryRepository));
     _mapper = mapper ??
               throw new ArgumentNullException(nameof(mapper));
 }
예제 #7
0
 public EditModel(IBookStoreRepository repository)
 {
     _repository = repository;
     PopulateAuthorsSelectList(_repository);
     PopulatePublishersSelectList(_repository);
     PopulateCategoriesSelectList(_repository);
     PopulateLanguagesSelectList(_repository);
 }
예제 #8
0
        public IBookStoreRepository <BookCategory> GetRepository()
        {
            if (categoryRepository == null)
            {
                categoryRepository = new BookCategoryRepository();
            }

            return(categoryRepository);
        }
예제 #9
0
        public void PopulateLanguagesSelectList(IBookStoreRepository repository,
                                                object selectedLanguage = null)
        {
            var LanguagesQuery = from l in repository.Languages
                                 orderby l.Name
                                 select l;

            LanguageNameSelectList = new SelectList(LanguagesQuery.AsNoTracking(),
                                                    "BookLanguageId", "Name", selectedLanguage);
        }
예제 #10
0
        public void PopulateAuthorsSelectList(IBookStoreRepository repository,
                                              object selectedAuthor = null)
        {
            var AuthorsQuery = from a in repository.Authors
                               orderby a.Name
                               select a;

            AuthorNameSelectList = new SelectList(AuthorsQuery.AsNoTracking(),
                                                  "AuthorId", "Name", selectedAuthor);
        }
예제 #11
0
        public void PopulatePublishersSelectList(IBookStoreRepository repository,
                                                 object selectedPublisher = null)
        {
            var publishersQuery = from p in repository.Publishers
                                  orderby p.Name
                                  select p;

            PublisherNameSelectList = new SelectList(publishersQuery.AsNoTracking(),
                                                     "PublisherId", "Name", selectedPublisher);
        }
예제 #12
0
        public void PopulateCategoriesSelectList(IBookStoreRepository repository,
                                                 object selectedCategory = null)
        {
            var CategoriesQuery = from c in repository.Categories
                                  orderby c.Name
                                  select c;

            CategoryNameSelectList = new SelectList(CategoriesQuery.AsNoTracking(),
                                                    "CategoryId", "Name", selectedCategory);
        }
        public AuthorsController(IBookStoreRepository bookstoreRepository,
                                 IMapper mapper,
                                 IConfiguration configuration)
        {
            _bookstoreRepository = bookstoreRepository ??
                                   throw new ArgumentNullException(nameof(bookstoreRepository));
            _mapper = mapper ??
                      throw new ArgumentNullException(nameof(mapper));

            Configuration = configuration;
        }
예제 #14
0
        public ApiTagsModule(IBookStoreRepository repository) : base("/api/tags")
        {
            _repository = repository;

            Get["/", true] =
                async(p, ct) => new JsonResponse(await _repository.GetTagsAsync(), new DefaultJsonSerializer());

            Get["/{id}", true] =
                async(p, ct) => new JsonResponse(await _repository.GetTagByIdAsync(p.id), new DefaultJsonSerializer());

            Post["/", true] = async(p, ct) => await AddOrUpdateTag();

            Put["/", true] = async(p, ct) => await AddOrUpdateTag();

            Delete["/", true] = async(p, ct) =>
            {
                string name = this.Request.Query["name"];
                _repository.DeleteTagByName(name);
                await _repository.SaveChangesAsync();

                return(new JsonResponse(new { success = true }, new DefaultJsonSerializer()));
            };
        }
예제 #15
0
 public BookStoreService(IBookStoreRepository repository) : base(repository)
 {
     _repository = repository;
 }
 public NavigationMenuViewComponent(IBookStoreRepository r)
 {
     repo = r;
 }
예제 #17
0
 public HomeController(IBookStoreRepository repository)
 {
     _repository = repository;
 }
예제 #18
0
 public AuthorController(IBookStoreRepository <Author> authorRepository)
 {
     this.authorRepository = authorRepository;
 }
예제 #19
0
 public BooksController(IBookStoreRepository repository)
 {
     this._repository = repository;
 }
 public AuthorsController(IBookStoreRepository repository)
 {
     _repository = repository;
 }
예제 #21
0
 public BookStoreManager(IBookStoreRepository bookStoreRepository)
 {
     _bookStoreRepository = bookStoreRepository;
 }
 public MapController(IBookStoreRepository bookStoreRepository, IBookRepository bookRepository)
 {
     _bookStoreRepository = bookStoreRepository;
     _bookRepository = bookRepository;
 }
예제 #23
0
 public AuthorsController(IBookStoreRepository _repository)
 {
     this.repository = _repository;
 }
예제 #24
0
 public IndexModel(IBookStoreRepository repository)
 {
     _repository = repository;
 }
예제 #25
0
 public CartModel(IBookStoreRepository repo, Cart cartService)
 {
     repository = repo;
     Cart       = cartService;
 }
예제 #26
0
 public EditModel(IBookStoreRepository repository)
 {
     _repository = repository;
 }
예제 #27
0
 public NavigationMenuViewComponent(IBookStoreRepository repo)
 {
     repository = repo;
 }
예제 #28
0
 public AuthorController(IBookStoreRepository <Author> authorRepo)
 {
     AuthorRepo = authorRepo;
 }
예제 #29
0
 //passes existing repository into a private variable to prevent new setting
 public HomeController(ILogger <HomeController> logger, IBookStoreRepository repository)
 {
     _logger     = logger;
     _repository = repository;
 }
 public BookController(IBookStoreRepository bookStoreRepository)
 {
     _bookStoreRepository = bookStoreRepository;
 }
예제 #31
0
 public BooksController(IBookStoreRepository _repository, IUrlHelper urlHelper)
 {
     this.repository = _repository;
     this.urlHelper  = urlHelper;
 }
예제 #32
0
 public BookStoreService(IBookStoreRepository bookStoreRepo)
 {
     _bookStoreRepo = bookStoreRepo;
 }