ASP.NET Core in Action, Third Edition, Video Edition

Video description

In Video Editions the narrator reads the book while the content, figures, code listings, diagrams, and text appear on the screen. Like an audiobook that you can also watch as a video.

Build professional-grade full-stack web applications using C# and ASP.NET Core.

In ASP.NET Core in Action, Third Edition you’ll learn how to:

  • Build minimal APIs for serving JSON to client-side applications
  • Create dynamic, server-side rendered applications using Razor Pages
  • User authentication and authorization
  • Store data using Entity Framework Core
  • Unit and integration tests for ASP.NET Core applications
  • Write custom middleware and components

Fully updated to ASP.NET Core 7.0! In ASP.NET Core in Action, Third Edition Microsoft MVP Andrew Lock teaches you how you can use your C# and .NET skills to build amazing cross-platform web applications. This revised bestseller reveals the latest .NET patterns, including minimal APIs and minimal hosting. Even if you've never worked with ASP.NET, you'll start creating productive cross-platform web apps fast. Illustrations and annotated code make learning visual and easy.

About the Technology
The ASP.NET Core web framework delivers everything you need to build professional-quality web applications. With productivity-boosting libraries for server-side rendering, secure APIs, easy data access and more, you’ll spend your time implementing features instead of researching syntax and tracking down bugs. This book is your guide.

About the Book
ASP.NET Core in Action, Third Edition shows you how to create production-grade web applications with ASP.NET Core 7.0. You’ll learn from hands-on examples, insightful illustrations, and nicely explained code. Updated coverage in this Third Edition includes creating minimal APIs, securing APIs with bearer tokens, WebApplicationBuilder, and more.

What's Inside
  • Minimal APIs for serving JSON
  • Server-side rendering using Razor Pages
  • Data access with Entity Framework Core
  • Write custom middleware and components


About the Reader
For beginning to intermediate web developers. Examples are in C#.

About the Author
Andrew Lock is a Microsoft MVP who has worked with ASP.NET Core since before its first release.

Quotes
ASP.NET Core is a big subject. Luckily, there’s a big book! This is my ASP.NET bible.
- Peter Morris, Author of blazor-university.com

Masterfully breaks down web programming. This book is a must-read for new and experienced developers alike. It sets the standard in the .NET space.
- Khalid Abuhakmeh, JetBrains

Andrew Lock’s extensive experience and applied advice will truly take any .NET web developer from zero to hero.
- James Hickey, Savvyy Technologies

Fantastic information to help you make the best applications possible. This book stays on my desk.
- Foster Haines, Foster's Website Company

Table of contents

  1. Chapter 1. Getting started with ASP.NET Core
  2. Chapter 1. What types of applications can you build?
  3. Chapter 1. Choosing ASP.NET Core
  4. Chapter 1. How does ASP.NET Core work?
  5. Chapter 1. What you’ll learn in this book
  6. Chapter 1. Summary
  7. Part 1 Getting started with minimal APIs
  8. Chapter 2. Understanding ASP.NET Core
  9. Chapter 2. Why ASP.NET Core was created
  10. Chapter 2. Understanding the many paradigms of ASP.NET Core
  11. Chapter 2. When to choose ASP.NET Core
  12. Chapter 2. Summary
  13. Chapter 3. Your first application
  14. Chapter 3. Creating your first ASP.NET Core application
  15. Chapter 3. Running the web application
  16. Chapter 3. Understanding the project layout
  17. Chapter 3. The .csproj project file: Declaring your dependencies
  18. Chapter 3. Program.cs file: Defining your application
  19. Chapter 3. Adding functionality to your application
  20. Chapter 3. Summary
  21. Chapter 4. Handling requests with the middleware pipeline
  22. Chapter 4. Combining middleware in a pipeline
  23. Chapter 4. Handling errors using middleware
  24. Chapter 4. Summary
  25. Chapter 5. Creating a JSON API with minimal APIs
  26. Chapter 5. Defining minimal API endpoints
  27. Chapter 5. Generating responses with IResult
  28. Chapter 5. Running common code with endpoint filters
  29. Chapter 5. Organizing your APIs with route groups
  30. Chapter 5. Summary
  31. Chapter 6. Mapping URLs to endpoints using routing
  32. Chapter 6. Endpoint routing in ASP.NET Core
  33. Chapter 6. Exploring the route template syntax
  34. Chapter 6. Generating URLs from route parameters
  35. Chapter 6. Summary
  36. Chapter 7. Model binding and validation in minimal APIs
  37. Chapter 7. Binding simple types to a request
  38. Chapter 7. Binding complex types to the JSON body
  39. Chapter 7. Arrays: Simple types or complex types?
  40. Chapter 7. Making parameters optional with nullables
  41. Chapter 7. Binding services and special types
  42. Chapter 7. Custom binding with BindAsync
  43. Chapter 7. Choosing a binding source
  44. Chapter 7. Simplifying handlers with AsParameters
  45. Chapter 7. Handling user input with model validation
  46. Chapter 7. Summary
  47. Part 2. Building complete applications
  48. Chapter 8. An introduction to dependency injection
  49. Chapter 8. Creating loosely coupled code
  50. Chapter 8. Using dependency injection in ASP.NET Core
  51. Chapter 8. Adding ASP.NET Core framework services to the container
  52. Chapter 8. Using services from the DI container
  53. Chapter 8. Summary
  54. Chapter 9. Registering services with dependency injection
  55. Chapter 9. Registering services using objects and lambdas
  56. Chapter 9. Registering a service in the container multiple times
  57. Chapter 9. Understanding lifetimes: When are services created?
  58. Chapter 9. Resolving scoped services outside a request
  59. Chapter 9. Summary
  60. Chapter 10. Configuring an ASP.NET Core application
  61. Chapter 10. Building a configuration object for your app
  62. Chapter 10. Using strongly typed settings with the options pattern
  63. Chapter 10. Configuring an application for multiple environments
  64. Chapter 10. Summary
  65. Chapter 11. Documenting APIs with OpenAPI
  66. Chapter 11. Testing your APIs with Swagger UI
  67. Chapter 11. Adding metadata to your minimal APIs
  68. Chapter 11. Generating strongly typed clients with NSwag
  69. Chapter 11. Adding descriptions and summaries to your endpoints
  70. Chapter 11. Knowing the limitations of OpenAPI
  71. Chapter 11. Summary
  72. Chapter 12. Saving data with Entity Framework Core
  73. Chapter 12. Adding EF Core to an application
  74. Chapter 12. Managing changes with migrations
  75. Chapter 12. Querying data from and saving data to the database
  76. Chapter 12. Using EF Core in production applications
  77. Chapter 12. Summary
  78. Part 3. Generating HTML with Razor Pages and MVC
  79. Chapter 13. Creating a website with Razor Pages
  80. Chapter 13. Exploring a typical Razor Page
  81. Chapter 13. Understanding the MVC design pattern
  82. Chapter 13. Applying the MVC design pattern to Razor Pages
  83. Chapter 13. Summary
  84. Chapter 14. Mapping URLs to Razor Pages using routing
  85. Chapter 14. Convention-based routing vs. explicit routing
  86. Chapter 14. Routing requests to Razor Pages
  87. Chapter 14. Customizing Razor Page route templates
  88. Chapter 14. Generating URLs for Razor Pages
  89. Chapter 14. Customizing conventions with Razor Pages
  90. Chapter 14. Summary
  91. Chapter 15. Generating responses with page handlers in Razor Pages
  92. Chapter 15. Selecting a page handler to invoke
  93. Chapter 15. Accepting parameters to page handlers
  94. Chapter 15. Returning IActionResult responses
  95. Chapter 15. Handler status codes with StatusCodePagesMiddleware
  96. Chapter 15. Summary
  97. Chapter 16. Binding and validating requests with Razor Pages
  98. Chapter 16. From request to binding model: Making the request useful
  99. Chapter 16. Validating binding models
  100. Chapter 16. Organizing your binding models in Razor Pages
  101. Chapter 16. Summary
  102. Chapter 17. Rendering HTML using Razor views
  103. Chapter 17. Creating Razor views
  104. Chapter 17. Creating dynamic web pages with Razor
  105. Chapter 17. Layouts, partial views, and _ViewStart
  106. Chapter 17. Summary
  107. Chapter 18. Building forms with Tag Helpers
  108. Chapter 18. Creating forms using Tag Helpers
  109. Chapter 18. Generating links with the Anchor Tag Helper
  110. Chapter 18. Cache-busting with the Append Version Tag Helper
  111. Chapter 18. Using conditional markup with the Environment Tag Helper
  112. Chapter 18. Summary
  113. Chapter 19. Creating a website with MVC controllers
  114. Chapter 19. Your first MVC web application
  115. Chapter 19. Comparing an MVC controller with a Razor Page PageModel
  116. Chapter 19. Selecting a view from an MVC controller
  117. Chapter 19. Choosing between Razor Pages and MVC controllers
  118. Chapter 19. Summary
  119. Chapter 20. Creating an HTTP API using web API controllers
  120. Chapter 20. Applying the MVC design pattern to a web API
  121. Chapter 20. Attribute routing: Linking action methods to URLs
  122. Chapter 20. Using common conventions with [ApiController]
  123. Chapter 20. Generating a response from a model
  124. Chapter 20. Choosing between web API controllers and minimal APIs
  125. Chapter 20. Summary
  126. Chapter 21. The MVC and Razor Pages filter pipeline
  127. Chapter 21. The Razor Pages filter pipeline
  128. Chapter 21. Filters or middleware: Which should you choose?
  129. Chapter 21. Creating a simple filter
  130. Chapter 21. Adding filters to your actions and Razor Pages
  131. Chapter 21. Understanding the order of filter execution
  132. Chapter 21. Summary
  133. Chapter 22. Creating custom MVC and Razor Page filters
  134. Chapter 22. Understanding pipeline short-circuiting
  135. Chapter 22. Using dependency injection with filter attributes
  136. Chapter 22. Summary
  137. Part 4. Securing and deploying your applications
  138. Chapter 23. Authentication: Adding users to your application with Identity
  139. Chapter 23. What is ASP.NET Core Identity?
  140. Chapter 23. Creating a project that uses ASP.NET Core Identity
  141. Chapter 23. Adding ASP.NET Core Identity to an existing project
  142. Chapter 23. Customizing a page in ASP.NET Core Identity’s default UI
  143. Chapter 23. Managing users: Adding custom data to users
  144. Chapter 23. Summary
  145. Chapter 24. Authorization: Securing your application
  146. Chapter 24. Authorization in ASP.NET Core
  147. Chapter 24. Using policies for claims-based authorization
  148. Chapter 24. Creating custom policies for authorization
  149. Chapter 24. Controlling access with resource-based authorization
  150. Chapter 24. Hiding HTML elements from unauthorized users
  151. Chapter 24. Summary
  152. Chapter 25. Authentication and authorization for APIs
  153. Chapter 25. Understanding bearer token authentication
  154. Chapter 25. Adding JWT bearer authentication to minimal APIs
  155. Chapter 25. Using the user-jwts tool for local JWT testing
  156. Chapter 25. Describing your authentication requirements to OpenAPI
  157. Chapter 25. Applying authorization policies to minimal API endpoints
  158. Chapter 25. Summary
  159. Chapter 26. Monitoring and troubleshooting errors with logging
  160. Chapter 26. Adding log messages to your application
  161. Chapter 26. Controlling where logs are written using logging providers
  162. Chapter 26. Changing log verbosity with filtering
  163. Chapter 26. Structured logging: Creating searchable, useful logs
  164. Chapter 26. Summary
  165. Chapter 27. Publishing and deploying your application
  166. Chapter 27. Publishing your app to IIS
  167. Chapter 27. Hosting an application in Linux
  168. Chapter 27. Configuring the URLs for your application
  169. Chapter 27. Summary
  170. Chapter 28. Adding HTTPS to an application
  171. Chapter 28. Using the ASP.NET Core HTTPS development certificates
  172. Chapter 28. Configuring Kestrel with a production HTTPS certificate
  173. Chapter 28. Enforcing HTTPS for your whole app
  174. Chapter 28. Summary
  175. Chapter 29. Improving your application’s security
  176. Chapter 29. Protecting from cross-site request forgery (CSRF) attacks
  177. Chapter 29. Calling your web APIs from other domains using CORS
  178. Chapter 29. Exploring other attack vectors
  179. Chapter 29. Summary
  180. Part 5. Going further with ASP.NET Core
  181. Chapter 30. Building ASP.NET Core apps with the generic host and Startup
  182. Chapter 30. The Program class: Building a Web Host
  183. Chapter 30. The Startup class: Configuring your application
  184. Chapter 30. Creating a custom IHostBuilder
  185. Chapter 30. Understanding the complexity of the generic host
  186. Chapter 30. Choosing between the generic host and minimal hosting
  187. Chapter 30. Summary
  188. Chapter 31. Advanced configuration of ASP.NET Core
  189. Chapter 31. Using DI with OptionsBuilder and IConfigureOptions
  190. Chapter 31. Using a third-party dependency injection container
  191. Chapter 31. Summary
  192. Chapter 32. Building custom MVC and Razor Pages components
  193. Chapter 32. View components: Adding logic to partial views
  194. Chapter 32. Building a custom validation attribute
  195. Chapter 32. Replacing the validation framework with FluentValidation
  196. Chapter 32. Summary
  197. Chapter 33. Calling remote APIs with IHttpClientFactory
  198. Chapter 33. Creating HttpClients with IHttpClientFactory
  199. Chapter 33. Handling transient HTTP errors with Polly
  200. Chapter 33. Creating a custom HttpMessageHandler
  201. Chapter 33. Summary
  202. Chapter 34. Building background tasks and ser vices
  203. Chapter 34. Creating headless worker services using IHost
  204. Chapter 34. Coordinating background tasks using Quartz.NET
  205. Chapter 34. Summary
  206. Chapter 35. Testing applications with xUnit
  207. Chapter 35. Creating your first test project with xUnit
  208. Chapter 35. Running tests with dotnet test
  209. Chapter 35. Referencing your app from your test project
  210. Chapter 35. Adding Fact and Theory unit tests
  211. Chapter 35. Testing failure conditions
  212. Chapter 35. Summary
  213. Chapter 36. Testing ASP.NET Core applications
  214. Chapter 36. Unit testing API controllers and minimal API endpoints
  215. Chapter 36. Integration testing: Testing your whole app in-memory
  216. Chapter 36. Isolating the database with an in-memory EF Core provider
  217. Chapter 36. Summary
  218. Appendix A. Preparing your development environment
  219. Appendix A. Choosing an IDE or editor

Product information

  • Title: ASP.NET Core in Action, Third Edition, Video Edition
  • Author(s): Andrew Lock
  • Release date: October 2023
  • Publisher(s): Manning Publications
  • ISBN: None