Table of Contents
I'm pleased to announce that ASP.NET Core 8 and Angular, the sixth edition of my ASP.NET Core and Angular book, is now available for purchase in E-Book and Paperback format on all the major online stores, including Packt Publishing, Amazon.com (also on it, uk, in, de, fr, jp and so on), Google Play Store, Barnes & Noble, O'Reilly, Mondadori, Rakuten Kobo, and more!
Here’s the updated cover:
As always, the new edition is a complete rewrite of the previous edition, due to the breaking changes brought by the new ASP.NET Core, C#, and Angular versions, which include several improvements to performance, configuration, and extension libraries, as well as some new features such as: required modifier, Identity API endpoints, Functional Route Guards, WebSocket support, and more.
Another relevant improvement is given by the usage of the new Visual Studio 2022 Angular and ASP.NET Core Project Template, which considerably simplifies the initial configuration of the development solution. As for the DBMS, I switched from SQL Server 2019 to SQL Server 2022, which provides several new features and enhancements in terms of security, data encryption, and Azure-based cloud interoperability.
Speaking of MS Azure, I added the support for Azure Serverless DB, a tier for single databases provided by Azure that automatically scales compute based on workload demand, thus allowing to optimize the overall costs without losing availability and performance.
Last but not least, in the release and deployment section, I changed the Linux hosting from CentOS (which was recently declared end-of-life) to Ubuntu Server, which is known for its ease of use, which should facilitate the experience for those developers who are not familiar with Linux.
As always, the book comes with a huge GitHub source code repository filled with brand-new sample projects that are fully usable by everyone – without having to buy anything.
If you want to know what the book is about, here’s the product information sheet. I definitely hope that you will like it just like you did with the previous one (ASP.NET Core 6 and Angular), who happened to be a best-seller in multiple countries with more than 15000 copies sold throughout the world! That couldn’t be made possible without you, so thanks again and… get ready for another development journey!
What's new
Let's start with a quick overview of the most important topics that have been added in this fifth edition:
- SQL Server 2022. The new edition of SQL Server allows seamless integration with Azure Synapse Analytics dedicated SQL pools: this exciting new feature allows any ASP.NET Core app to run analytics, business intelligence, and machine learning scenarios on operational data with minimum impact on source databases. Furthermore, the new version brings support for object storage integration (backup-to-URL, Data Lake Virtualization), Microsoft Entra authentication formerly Azure Active Directory, aka AAD), Always Encrypted mode, and much more.
- Ubuntu Server deployment. An ideal choice to host & deploy ASP.NET Core apps on Ubuntu because it delivers great scale-out performances while being very simple to set up and use.
- Azure Serverless database. A tier for single databases provided by Azure that automatically scales compute based on workload demand, thus allowing to optimize the overall costs without losing availability and performance.
- globalization-invariant mode. Determines whether a .NET Core app runs in globalization-invariant mode without access to culture-specific data and behavior. When this setting is omitted (or set to false), the app runs with access to cultural data. For more information, see .NET Core globalization invariant mode.
- Required modifier. A feature introduced with C# 11 indicating that the field or property it's applied to must be initialized by an object initializer. Any expression that initializes a new instance of the type must initialize all required members. The required modifier enables developers to create types where properties or fields must be properly initialized, yet still allow initialization using object initializers. For additional info, see required modifier (C# Reference).
- Identity API Endpoints. A new set of API endpoints for ASP.NET Core Identity added to .NET 8 that can be used to perform basic Identity operations like registering users. These endpoints serve as API-friendly alternatives to the "default UI" that has been available with ASP.NET Core Identity for some time. For additional info, see Improvements to auth and identity in ASP.NET Core 8.
- Functional Route Guards. Lightweight, ergonomic, and more composable than class-based guards introduced in Angular v14 to have less boilerplate and gain more productivity.
- MS Azure Static Web Apps. A modern web app service that offers streamlined full-stack development from source code to global high availability. For more information, see Azure Static Web Apps.
As we can see, there's a lot of new content!
Key Features
- Combine ASP.NET Core and Angular to build highly versatile web applications
- Create a production-ready Single-Page Application (SPA) or Progressive Web Application (PWA)
- Adopt a full-stack approach to handle data management, API documentation, Web APIs, end-to-end testing, security, and deployment
Book Description
If you want to learn how to use ASP.NET Core with Angular effectively, this hands-on guide is for you.
Improve the way you create, debug, and deploy web applications while keeping up to date with the latest developments in .NET 8 and modern Angular, including .NET Minimal APIs and the new Angular standalone API defaults.
You'll begin by setting up SQL Server 2022 and building a data model with Entity Framework Core. You'll progress to fetching and displaying data, handling user input with Angular reactive forms, and implementing front-end and back-end validators for maximum effect. After that, you will perform advanced debugging and explore unit testing features with xUnit for .NET, and Jasmine and Karma for Angular. You'll use Identity API endpoints in ASP.NET Core and functional route guards in Angular to add authentication and authorization to your apps. Finally, you'll learn how to deploy to Windows, Linux, and Azure.
By the end of this book, you will understand how to tie together the front-end and back-end to build and deploy secure and robust web applications.
What you will learn
- Explore the new Angular and ASP.NET Core template with Visual Studio 2022
- Use modern interfaces and patterns such as the HTML5 pushState API, webhooks, and UI data bindings
- Add real-time capabilities to Angular apps with SignalR and gRPC
- Implement authentication and authorization using JWTs
- Perform DBMS structured logging using providers such as SeriLog
- Convert a standard web application to a progressive web application (PWA)
- Deploy an Angular app to Azure Static Web Apps
- Add GraphQL support to back-end and front-end using HotChocolate and Apollo Angular
Who this book is for
This book is for developers who have some familiarity with ASP.NET Core and Angular and want to learn how to use them effectively together.
The fully documented code samples (also available on GitHub) and the step-by-step implementation tutorials make this book easy to follow.
Table of Contents
- Introducing ASP.NET and Angular
- Getting Ready
- Looking Around
- Front-End and Back-End Interactions
- Data Model with Entity Framework Core
- Fetching and Displaying Data
- Forms and Data Validation
- Code Tweaks and Data Services
- Back-End and Front-End Debugging
- ASP.NET Core and Angular Unit Testing
- Authentication and Authorization
- Progressive Web Apps
- Beyond REST - Web API with GraphQL
- Real-Time Updates with SignalR
- Windows, Linux, and Azure Deployment
About the Author
Valerio De Sanctis is a skilled IT professional with 20 years of experience in lead programming, web-based development, and project management using ASP.NET, PHP, Java, and JavaScript-based frameworks. He held senior positions at a range of financial and insurance companies, most recently serving as Chief Technology and Security Officer at a leading IT service provider for top-tier insurance groups. He's an active member of the Stack Exchange Network, providing advice and tips on the Stack Overflow, ServerFault, and SuperUser communities; he is also a Microsoft Most Valuable Professional (MVP) for Developer Technologies.