You are developing an online bookstore web application that will be used by your company’s customers.
– The web store application must be an ASP.NET MVC application written in Visual Studio.
– The application must connect to a Microsoft SQL database.
– The GetTop100Books() method is mission critical and must return data as quickly as possible. It should take advantage of fast, forward-only, read-only methods of reading data.
– The ImportBooks() method must keep a copy of the data that can be accessed while new books are being imported without blocking reads.
– The CreateMonthlyTotalsReport() method must lock the data and prevent others from updating or inserting new rows until complete.
– The college textbook area of the web application must get data from a daily updated CSV file.
– The children’s book area of the web application must get data directly from a local database. It must use a connection string. It must also support access to the stored procedures on the database. Further, it is required to have strongly typed objects. Finally, it will require access to databases from multiple vendors and needs to support more than one-to-one mapping of database tables.
– The BookApiController class must have a method that is able to perform ad-hoc queries using OData.
The RESTful API of the bookstore must expose the following endpoints.