public async Task <Payload <Book> > AddBookByIsbnAsync( AddBookByIsbnInput input, [Service] IGetClaimsProvider claimsProvider, [Service] IBookApiService apiService, [ScopedService] BookRefDbContext context) { if (context.Books.Any(e => e.Identifier == input.Isbn)) { return(new Payload <Book>(BuildSingleError(new BookException($"Book with isbn '{input.Isbn}' already in database.")))); } var apiResult = apiService.FindBook(input.Isbn); if (apiResult.IsNone) { return(new Payload <Book>(BuildSingleError(new BookException($"{input.Isbn} not found in service")))); } apiResult = new BookService().MatchAuthors(context.Authors.ToList(), apiResult); var book = apiResult.IfNone(new Book("", "", "")); var validationResult = new BookValidator().Validate(book); if (!validationResult.IsValid) { return(new Payload <Book>(BuildErrorList(validationResult.Errors))); } context.Books.Add(book); await context.SaveChangesAsync(); return(new Payload <Book>(book)); }
//private readonly AggregateRepository _repository; public SampleDataSeeder( BookRefDbContext context, IBookApiService service) { _context = context; _service = service; //_repository = repository; }
public BookInventoryController(IWebHostEnvironment webHostEnvironment, IBookApiService bookApiService) { _webHostEnvironment = webHostEnvironment ?? throw new ArgumentNullException(nameof(webHostEnvironment)); _bookApiService = bookApiService ?? throw new ArgumentNullException(nameof(bookApiService)); }
public BooksController(IBookApiService bookApiService, ISageApiService sageApiService) { _bookApiService = bookApiService; _sageApiService = sageApiService; }
public BasketController(IBookApiService bookApiService, IBookOrderApiService bookOrderApiService) { _bookApiService = bookApiService; _bookOrderApiService = bookOrderApiService; }
public HomeController(IBookApiService bookApiService) { _bookApiService = bookApiService ?? throw new ArgumentNullException(nameof(bookApiService)); }