###BeginCaseStudy###
Testlet 1
Background
You are developing an online bookstore web application that will be used by your company’s customers.
Technical Requirements
General requirements:
The web store application must be an ASP.NET MVC application written in Visual Studio.
The application must connect to a Microsoft SQL database.
TheGetTop100Books()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.
TheImportBooks()method must keep a copy of the data that can be accessed while new books are being
imported without blocking reads.
TheCreateMonthlyTotalsReport()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 a 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 cookbook functionality is contained within a client-side application that must connect to the server using
HTTP and requires access to the data using JavaScript.
TheBookApiControllerclass must have a method that is able to perform ad-hoc queries using OData.
The RESTful API of the bookstore must expose the following endpoint.
Action: Get a list of all books
HTTP method: GET
Relative URI: /books
Action: Get a book by id
HTTP method: GET
Relative URI: /books/id
Action: Create a new book
HTTP method: POST
Relative URI: /books
Action: Update a book
HTTP method: PUT
Relative URI: /books/id
Action: Delete a book
HTTP method: DELETE
Relative URI: /books/id
Application Structure
Main
PurchaseOrders.xml
FeaturedBooks.xml
###EndCaseStudy###
You need to implement the Get() method in the bookstore Web API application to be able to find books by
using an ad hoc query.
Which method should you use?
A.
Option A
B.
Option B
C.
Option C
Explanation:
Compare to the Delete method from the scenario:
Answer is A since books should be easily queryable using an ad hoc query. IQueryable supports OData
Answer B can’t be correct, due to the fact, that B returns a list of books and the method signature states it’s just one book.
Answer is A.
“TheBookApiControllerclass must have a method that is able to perform ad-hoc queries using OData.”
Means use IQueryable.
https://docs.microsoft.com/en-us/aspnet/web-api/overview/odata-support-in-aspnet-web-api/supporting-odata-query-options
I am with null
Answer is A.