- Chapter 1 - Introducing Apps and Services with .NET
- Chapter 2 - Managing Relational Data Using SQL Server
- Chapter 3 - Managing NoSQL Data Using Azure Cosmos DB
- Chapter 4 - Benchmarking Performance, Multitasking, and Concurrency
- Chapter 5 - Using Popular Third-Party Libraries
- Chapter 6 - Controlling the Roslyn Compiler, Reflection and Expression Trees
- Chapter 7 - Handling Dates, Times, and Internationalization
- Chapter 8 - Protecting Your Data and Applications
- Chapter 9 - Building and Securing Web Services Using Minimal APIs
- Chapter 10 - Exposing Data via the Web Using OData
- Chapter 11 - Combining Data Sources Using GraphQL
- Chapter 12 - Building Efficient Microservices Using gRPC
- Chapter 13 - Broadcasting Real-Time Communication Using SignalR
- Chapter 14 - Building Serverless Nanoservices Using Azure Functions
- Chapter 15 - Building Web User Interfaces Using ASP.NET Core
- Chapter 16 - Building Web Components Using Blazor WebAssembly
- Chapter 17 - Using Open-Source Blazor Component Libraries
- Chapter 18 - Building Mobile and Desktop Apps Using .NET MAUI
- Chapter 19 - Integrating .NET MAUI Apps with Blazor and Native Platforms
- Chapter 20 - Introducing the Survey Project Challenge
- Epilogue
- Download Visual Studio for Windows
- Visual Studio for Windows documentation
- MSBuild and 64-bit Visual Studio 2022
- Visual Studio 2022 for Mac is now available
- Download Visual Studio Code
- Set up Visual Studio Code
- Visual Studio Code user interface
- Visual Studio Code support for C#
- Visual Studio Code key bindings and shortcuts
- Stack Overflow survey 2021 - Integrated development environment
- Stack Overflow survey 2019 - Most Popular Development Environments
- Visual Studio for Mac documentation
- GitHub Codespaces
- JetBrains Rider
- Rider documentation
- Download .NET SDK
- .NET Conf 2022 Keynote: Welcome to .NET 7 | .NET Conf 2022
- Stack Overflow survey 2021 - Most loved frameworks and libraries
- Themes of .NET
- Official list of .NET 7 supported operating systems
- .NET Support Policy
- .NET versions
- .NET Uninstall Tool
- How to remove the .NET Runtime and SDK
- .NET Runtime
- .NET Release Schedule
- .NET Team Members
- What's New in C# 11 | .NET Conf 2022
- Early peek at C# 11 features
- What's new in C# 11
- Welcome to C# 10
- What's new in C# 10
- What's new in C# 9
- What's new in C# 8
- What's new in C# 7.3
- Rosalyn and C# compiler versions
- Current status of the C# language
- Draft proposals for C# Language Specifications for 6.0 and later
- C# language versioning
- EPIC - .NET 6 C# project templates use latest language idioms #3359
- SDK support for implicit namespaces in C# projects #25066
- Proposal: Required Properties #3630
- Proposal: Semi-Auto-Properties; field keyword #140
- Working Set (of proposals)
- C# Reference
- C# Programming Guide
- C# Keywords
- Naming guidelines
- Types (C# Programming Guide)
- Statements (C# Programming Guide)
- Pattern matching overview
- Patterns (C# reference)
- State of Azure + .NET | .NET Conf 2022
- The Whirlwind Tour of Building .NET Apps in Azure | .NET Conf 2022
- Raise an issue with the book
- Microsoft Learn
- Official .NET Blog written by the .NET engineering teams
- Stack Overflow
- Google Advanced Search
- .NET Videos
- Try SQL Server on-premises or in the cloud
- Download SQL Server Management Studio (SSMS)
- Quickstart: Connect and query a SQL Server instance using SQL Server Management Studio (SSMS)
- Quickstart: Connect and query an Azure SQL Database or an Azure Managed Instance using SQL Server Management Studio (SSMS)
- Use Visual Studio Code to create and run Transact-SQL scripts
- .NET Interactive with SQL!| .NET Notebooks in Visual Studio Code
- EF Core documentation
- Announcing the Plan for EF7
- New features in EF Core 7
- New features in EF Core 6
- New features in EF Core 5
- Get to Know EF Core 6
- Plans for Entity Framework Core 6.0 revealed as Microsoft admits it is unlikely to match Dapper for performance
- Entity Framework Community Standup - Performance Tuning an EF Core App
- EF Core database providers
- Devart database providers
- Check the latest NuGet package version
- Document Database Providers for Entity Framework Core
- EF Core model conventions
- Data seeding
- Humanizer library
- Scaffolding
- Deep Dive into Many-to-Many: A Tour of EF Core 5.0
- Naming Conventions for Entity Framework Core Tables and Columns
- Table-per-concrete-type (TPC) inheritance mapping
- T4 goodness with Entity Framework Core 7 | .NET Conf 2022
- Dapper
- Announcing Entity Framework Core 6.0 Preview 4: Performance Edition
- Announcing Entity Framework Core 7 Preview 6: Performance Edition
- Welcome to Azure Cosmos DB
- Azure Cosmos DB .NET SDK v3 for SQL API: Download and release notes
- Data modeling in Azure Cosmos DB
- How to model and partition data on Azure Cosmos DB using a real-world example
- Getting started with SQL queries
- Azure Cosmos DB query cheat sheets
- Stored procedures, triggers, and user-defined functions
- Manage consistency levels in Azure Cosmos DB
- Create a container in Azure Cosmos DB SQL API
- Query an Azure Cosmos container
- Best practices for Azure Cosmos DB .NET SDK
- Diagnose and troubleshoot issues when using Azure Cosmos DB .NET SDK
- Migrate one-to-few relational data into Azure Cosmos DB SQL API account
- Frequently asked questions about different APIs in Azure Cosmos DB
- Performance Improvements in .NET 7 | .NET Conf 2022
- Thread pool
- Pros and cons of different ways to start tasks
- Events and thread-safety
- Stephen Cleary's thoughts on events and thread-safety
- Threads and threading
- Async in depth
- await (C# reference)
- Parallel Programming in .NET
- Overview of synchronization primitives
- Async streams tutorial
This chapter title was changed to Observing and Modifying Code Execution Dynamically to better reflect the chapter contents but the link was kept so that it didn't break.
- .NET API Reference
- Compiler-generated display class
- Dynamically load assemblies that are not currently referenced
- Dynamically execute code
- Dynamically generate new code and assemblies
- Extending Metadata Using Attributes
- Source Generators
- Introducing C# Source Generators
- Source Generators Cookbook
- C# Source Generators: "A list of C# Source Generators (not necessarily awesome), because I haven't found a good list yet."
- Date, Time, and Time Zone Enhancements in .NET 6
- .NET 6: Date and Time Structures
- Noda Time: A better date and time API for .NET
- Features supported by which OS
- Dictionary Attacks 101
- The first publicly known SHA1 collision happened in 2017
- The RSA algorithm is based on the factorization of large integers
- Key Security Concepts
- Encrypting Data
- Cryptographic Signatures
- Media types
- WS-* standards
- Bring WCF apps to the latest .NET with CoreWCF and Upgrade Assistant
- HTTP OPTIONS method and other HTTP methods
- HTTP POST requests
- Create web APIs with ASP.NET Core
- RESTful web API design
- Making the Most of Minimal APIs in .NET 7 | .NET Conf 2022
- Building modern high performance services with ASP.NET Core and .NET 7
- Design decisions around endpoint routing
- Endpoint routing
- Previous routing system
- Route constraints
- Dependency injection for ASP.NET Core
- Proposed standard for Problem Details for HTTP APIs
- Implementing problem details
- REST Client
- It is the BaseAddress and DefaultRequestHeaders properties that you should treat with caution with multiple threads
- You're using HttpClient wrong and it is destabilizing your software
- How to initiate HTTP requests
- Issues with the original HttpClient class available in .NET
- HttpClient extension methods for easily working with JSON
- Swagger
- Swagger Tools
- Swashbuckle for ASP.NET Core
- How Swagger can support multiple versions of an API
- Importance of documenting services
- Benefits of setting version compatibility
- Check latest version of analyzers package
- Verifying that the tokens used to call your web APIs are requested with the expected claims
- CORS can be enabled to allow different origin requests
- Common HTTP security headers that you might want to add
- Built-in features for compliance with modern privacy requirements like GDPR
- ASP.NET Core's support for authenticator apps
- Identity UI library
- Authorization
- Anti-forgery tokens
- Health checks in ASP.NET Core
- How to extend the health check response
- How Polly can make your web services more reliable
- Use HttpClientFactory to implement resilient HTTP requests
- Redis
- OData - the best way to REST
- Welcome to OData
- OData reference
- OData DevBlog
- $compute and $search in ASP.NET Core OData 8
- The Future of OData NxT (Neo)
- API versioning extension with ASP.NET Core OData 8
- GraphQL
- HotChocolate - ChilliCream GraphQL Platform
- HotChocolate GitHub repository
- Getting started with GraphQL and HotChocolate
- Say hello to Hot Chocolate 12!
- gRPC
- gRPC - Architecting Cloud Native .NET Applications for Azure
- Introduction to gRPC on .NET
- Protocol Buffers
- ASP.NET Core gRPC for WCF Developers
- Introduction to HTTP/2
- High-performance services with gRPC: What's new in .NET 7 | .NET Conf 2022
- From RESTful HTTP API to gRPC | .NET Conf 2022
- Using CoreWCF to unblock modernization of WCF apps | .NET Conf 2022
- .NET 7 comes to Azure Functions & Visual Studio 2022
- Azure Functions
- Azure Functions documentation
- Azure serverless community library
- Building Serverless Applications with .NET 7 and Azure functions | .NET Conf 2022
- State of ASP.NET Core | .NET Conf 2022
- ASP.NET Core fundamentals
- Overview of ASP.NET Core MVC
- Free TLS/SSL certificates
- Razor syntax reference for ASP.NET Core
- HtmlHelper class
- Views in ASP.NET Core MVC
- Layout in ASP.NET Core
- Tag Helpers in ASP.NET Core
- Human-readable Razor views with ASP.NET 7 Tag Helpers | .NET Conf 2022
- ASP.NET Core Razor Pages with EF Core
- Registering a database context for use as a dependency service
- The
<partial>
tag helper - Why it is good to put <script> elements at the bottom of the
- Blazor
- Official list of supported Blazor platforms
- Blazor hosting models
- Blazor Hybrid apps
- What's new for Blazor in .NET 7 | .NET Conf 2022
- .NET ❤️’s WebAssembly in .NET 7 | .NET Conf 2022
- The reason for needing CSS isolation for Blazor components
- OI icons
- Forms and validation
- NavigationManager with Blazor routes
- Implementing offline support for Blazor WebAssembly projects
- Lazy loading assemblies
- Routing in Blazor Apps: Comparing the routing of popular web frameworks like React and Angular with Blazor
- Use .NET from any JavaScript app in .NET 7
- Testing Blazor Applications with Playwright | .NET Conf 2022
- CSS Techniques for Blazor Developers | .NET Conf 2022
- Awesome Blazor: A collection of awesome Blazor resources
- Blazor University: Learn the new .NET SPA framework from Microsoft
- Blazor - app building workshop: In this workshop, we will build a complete Blazor app and learn about the various Blazor framework features along the way
- Carl Franklin's Blazor Train
- Welcome to PACMAN written in C# and running on Blazor WebAssembly
- State of .NET MAUI | .NET Conf 2022
- .NET Multi-platform App UI
- .NET Multi-platform App UI documentation
- .NET Multi-platform App UI (.NET MAUI) Support Policy
- What's new in .NET MAUI and Desktop Apps | .NET Conf 2022
- .NET Conf Focus on MAUI – That’s a wrap!
- .NET Podcasts - Sample Application
- .NET MAUI eBook Now Available – Enterprise Application Pattern
- Announcing .NET MAUI support for Xcode 14 and iOS 16
- Introducing .NET MAUI – One Codebase, Many Platforms
- Introducing .NET Multi-platform App UI
- Layouts
- Pages - ContentPage
- Add a splash screen to a .NET MAUI app project
- Inspect the visual tree of a .NET MAUI app
- Phone dialer
- Connect to local web services from Android emulators and iOS simulators
- .NET MAUI - Workshop
- Build mobile and desktop apps with .NET MAUI learning path
- Forums
- MVVM is easier than ever before with Source Generators, .NET 7, and the MVVM Toolkit| .NET Conf 2022
- Building Windows apps with WinUI 3 with .NET | .NET Conf 2022
- Accelerate your WinUI 3 app with the Windows Community Toolkit | .NET Conf 2022
- OSS Spotlight - Build amazing cross-platform UI for .NET with Avalonia UI!
- Create native desktop & mobile apps using web skills in Blazor Hybrid | .NET Conf 2022
- Host a Blazor web app in a .NET MAUI app using BlazorWebView
- Enterprise Application Patterns Using .NET MAUI
- CarouselView
- Display a menu bar in a .NET MAUI desktop app
- Xamarin.Essentials 1.7 and introducing .NET MAUI Essentials
- Platform integration
- Permissions
- Connectivity
- Device information
- Geolocation
- App actions
- File picker
- Media picker
- Clipboard
- Secure storage
- Modernize your WPF and Windows Forms application with Blazor | .NET Conf 2022
- Follow the Framework Design Guidelines
- Follow the code style rules
- Cloud-Native learning resources for .NET developers
- Mobile Development with .NET
- Enterprise Application Development with C# 10 and .NET 6
- Software Architecture with C# 10 and .NET 6
- An Atypical ASP.NET Core 6 Design Patterns Guide
- Customizing ASP.NET Core 6.0
- ASP.NET Core 5 Secure Coding Cookbook
- ASP.NET Core 5 and React
- ASP.NET Core 6 and Angular
- ASP.NET Core and Vue.js
- Practical Microservices with Dapr and .NET
- Web Development with Blazor
- Building Blazor WebAssembly Applications with gRPC
- Mastering Windows Presentation Foundation