To keep controllers as light as possible, data access should be delegated to a service. Explore how to refactor the controller to use a service class for data access.
- [Instructor] Right now the controller is directly…interacting with the data context.…It's a better pattern to move this data access code to a…service class and keep the controller as thin as possible.…By relying on a service to interact with the dbcontext,…the data access concerns are separated from the controller.…This also has the benefit of making…the controller easier to test…because you can inject a mock service and run tests…without actually interacting with the database.…To start writing the service layer for this API,…I'll create a new folder here on the root called Services.…
And in here I'll create one new service interface…called IRoomService.…I'll make this public.…And right now this interface will just have one method.…It'll be a task that returns a room,…let's import that model's namespace.…And we'll call this GetRoomAsync,…given a Guid id.…Now I'll create my implementation,…also here in Services, a class called,…you can either call this roomservice…or I like to say DefaultRoomService…to differentiate it from a mock…
- What is RESTful design?
- Building a new API with ASP.NET Core
- Using HTTP methods
- Returning JSON
- Creating RESTful routing with templates
- Securing RESTful APIs with HTTPS
- Representing resources
- Representing links
- Representing collections
- Sorting and searching collections
- Building forms
- Adding caching to an ASP.NET Core API
- Configuring user authentication and authorization
Skill Level Intermediate
1. REST API Concepts
2. Build a Basic API
3. Versioning and Errors
4. Secure the API
5. Represent Resources
6. Represent Links
7. Represent Collections
Add pagination7m 37s
8. Sorting Collections
9. Searching Collections
10. Forms and Modifying Data
11. Caching and Compression
12. Authentication and Authorization
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.