Awesome
๐จ Awesome .Net Core Education
Collection of useful Articles and resources to learning and practicing about .Net Core and its related technologies, this repository will update continuously, keep yourself up to date.
Contributions are always welcome! Please take a look at the contribution guidelines pages first.
Thanks to all contributors, you're awesome and wouldn't be possible without you! The goal is to build a categorized community-driven collection of very well-known resources.
Check out my blog or find me on Linkedin or Twitter!
Contents
- DotNet
- DotNet 5
- DotNet Standard
- Dotnet Core
- DotNet CLI
- MetaPack
- Serialization
- Generic Host And Web Host
- DotNet Core Architecture
- Hosting
- Kestrel
- Middleware
- Configuration
- Options Pattern
- Grpc
- WebSockets
- SignalR
- HttpClient
- WEB API
- DotNet Core GraphQL
- DotNet Core Docker
- API Versioning
- Hosted Service
- Test Host And WebApplicationFactory
- Routing
- Dependency Injection
- Security
- Logging
- Tracing
- EF Core
- Environment
- Mapping
- Benchmarking
- Others
DotNet
๐ Articles
- What is .NET? What's C# and F#? What's the .NET Ecosystem? .NET Core Explained, what can .NET build?
DotNet 5
๐ Articles
DotNet Standard
๐ Articles
๐น Videoes
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>DotNet Core
๐ Articles
- What's new in ASP.NET Core 2.1
- What's new in ASP.NET Core 2.2
- What's new in ASP.NET Core 3.0
- What's new in ASP.NET Core 3.1
- What's new in ASP.NET Core 5.0
- Migrate from ASP.NET Core 2.2 to 3.0
- Migrate from ASP.NET Core 3.0 to 3.1
- Migrate from ASP.NET Core 3.1 to 5.0
๐น Videoes
- Migrating to .NET Core 3 | ASP.NET Core 2.2 & 3 REST API Tutorial 16
- Upgrading to .NET Core 3.1 (Real Life Project)
- Upgrading to .NET 5.0 RC w/ C# 9.0
DotNet CLI
๐ Articles
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>MetaPack
๐ Articles
- Microsoft.AspNetCore.App for ASP.NET Core
- Microsoft.AspNetCore.All metapackage for ASP.NET Core 2.0
- Deep-dive into .NET Core primitives, part 2: the shared framework
Serialization
๐ Articles
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Generic Host And Web Host
๐ Articles
-
USING HOSTBUILDER AND THE GENERIC HOST IN .NET CORE MICROSERVICES
-
The ASP.NET Core Generic Host: namespace clashes and extension methods
-
IHostingEnvironment vs IHostEnvironment - obsolete types in .NET Core 3.0
-
Exploring the new project file, Program.cs, and the generic host
-
Introducing IHostLifetime and untangling the Generic Host startup interactions
-
Exploring Program.cs, Startup.cs and CreateDefaultBuilder in ASP.NET Core 2 preview 1
๐ Samples
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>DotNet Core Architecture
๐ Articles
-
ASP.NET CORE ANATOMY (PART 4) โ INVOKING THE MVC MIDDLEWARE
-
Deep-dive into .NET Core primitives: deps.json, runtimeconfig.json, and dll's
-
Deep-dive into .NET Core primitives, part 2: the shared framework
-
Deep-dive into .NET Core primitives, part 3: runtimeconfig.json in depth
๐น Videoes
- ASP.NET Community Standup - ASP.NET Core Architecture with David Fowler
- Munich .NET Meetup: Anatomy of ASP.NET Core Requests by Steve Gordon
Hosting
๐ Articles
Kestrel
๐ Articles
๐น Videoes
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Middleware
๐ Articles
-
DEEP DIVE: HOW IS THE ASP.NET CORE MIDDLEWARE PIPELINE BUILT?
-
Understanding your middleware pipeline with the Middleware Analysis package
-
Creating an endpoint from multiple middleware in ASP.NET Core 3.x
-
Converting a terminal middleware to endpoint routing in ASP.NET Core 3.0
Configuration
๐ Articles
๐ฆ Libraries
๐ Samples
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Options Pattern
๐ Articles
-
How to use the IOptions pattern for configuration in ASP.NET Core RC2
-
Access services inside ConfigureServices using IConfigureOptions in ASP.NET Core
Grpc
๐ Articles
- Introduction to gRPC on .NET
- gRPC services with C#
- Create gRPC services and methods
- Call gRPC services with the .NET client
- gRPC client factory integration in .NET Core
- gRPC and C# 8 Async stream
- gRPC and C# 8 Async stream cancellation
- Code-first gRPC services and clients with .NET
- Create JSON Web APIs from gRPC
๐น Videoes
- Bidirectional Streaming | gRPC in .NET 5
- Client Streaming | gRPC in .NET 5
- gRPC Server & Unary Calls | gRPC in .NET 5
- Server Streaming | gRPC in .NET 5
WebSockets
๐ Articles
- Understanding WebSockets with ASP.NET Core
- Using Web Sockets with ASP.NET Core
- WebSockets support in ASP.NET Core
SignalR
๐ Articles
๐น Videoes
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>HttpClient
๐ Articles
- SENDING AND RECEIVING JSON USING HTTPCLIENT WITH SYSTEM.NET.HTTP.JSON
- .NET 5: Exploring System.Net.Http.Json namespace
- Introducing Strongly Typed HTTP Request Headers for ASP.NET Core
WEB API
๐ Articles
- ASP.NET Core 5 Route to Code: Taking advantage of Microsoft.AspNetCore.Http json extensions
- Nano services with ASP.NET Core or how to build a light API
- Basic JSON APIs with Route-to-code in ASP.NET Core
- Model Binding - ASP.NET Core Demystified
- Beautiful and compact Web APIs with C# 9, .NET 5.0 and ASP.NET Core
- Building microservices with ASP.NET Core (without MVC)
- Finally the ASP.NET 5 Web API Blog Series!
- ASP.NET Core in .NET 5 โ pass parameters to actions
- Model Binding in ASP.NET Core
- Custom Model Binding in ASP.NET Core
- Asp.Net Core Model Binding: Controlling The Binding Source
- Use ASP.NET Core route-to-code for simple JSON APIs
- Using action results and content negotiation with "route-to-code" APIs
- Creating Discoverable HTTP APIs with ASP.NET Core 5 Web API
๐น Videoes
๐ Samples
- https://github.com/featherhttp/framework
- https://github.com/featherhttp/tutorial
- https://github.com/filipw/net50-webapi-samples
- https://github.com/ardalis/ApiEndpoints
DotNet Core GraphQL
๐ Articles
๐น Videoes
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>DotNet Core Docker
๐ Articles
๐น Videoes
API Versioning
๐ Articles
๐น Videoes
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Hosted Service
๐ Articles
Test Host And WebApplicationFactory
๐ Articles
-
Using custom startup class with ASP.NET Core integration tests
-
Using custom appsettings.json with ASP.NET Core integration tests
Routing
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Dependency Injection
๐ Articles
-
.NET Core Dependency Injection: Everything You Ought To Know
-
ASP.NET CORE DEPENDENCY INJECTION โ REGISTERING MULTIPLE IMPLEMENTATIONS OF AN INTERFACE
-
ASP.NET CORE DEPENDENCY INJECTION โ HOW TO REGISTER GENERIC TYPES
-
ASP.NET CORE DEPENDENCY INJECTION โ REGISTERING IMPLEMENTATIONS USING DELEGATES
-
6 Ways To Implement The Strategy Pattern In C# (Basic To Advanced)
Security
Encryption And Data Protection
๐ Articles
- Symmetric and Asymmetric Encryption in .NET Core
- ENCRYPTING TEXTS FOR AN IDENTITY IN ASP.NET CORE RAZOR PAGES USING AES AND RSA
- USING DIGITAL SIGNATURES TO CHECK INTEGRITY OF CIPHER TEXTS IN ASP.NET CORE RAZOR PAGES
- Configure ASP.NET Core Data Protection
- An introduction to the Data Protection system in ASP.NET Core
DotNet Core Identity
๐ Articles
- ASP.NET Core Identity โ Getting Started
- Overview of ASP.NET Core authentication
- Introduction to Identity on ASP.NET Core
- Identity model customization in ASP.NET Core
- ASP NET Core Identity Tutorial
- Login and Registration using Identity in ASP.NET Core 3.1
Authentication
๐ Articles
- Introduction to Authentication with ASP.NET Core
- Exploring the cookie authentication middleware in ASP.NET Core
- Getting started with Securing APIs using JWT Bearer Authentication - Hands on
- JWT Authentication In ASP.NET Core
- Login Web Application using Cookie Authentication in ASP NET Core
๐น Videoes
- ASP.NET Core 3 - Authentication - Ep.1 Basics (Claims/ClaimsIdentity/ClaimsPrincipal/Authorization)
- ASP.NET Core 3 - Authentication - Ep.2 Identity Authentication
- Secure a .NET Core API with Bearer Authentication
Authorization
๐ Articles
- Create an ASP.NET Core web app with user data protected by authorization
- ASP.NET Core Identity Roles based Authorization
- Role-based authorization in ASP.NET Core
- Policy-based authorization in ASP.NET Core
- Claims-based authorization in ASP.NET Core
- Resource-based authorization in ASP.NET Core
- ASP.NET Core - Claims Based Authentication: Claims vs Identities vs Principals
- Role-based and Claims-based Authorization in ASP.NET Core using Policies - Hands on
- Implementing Policy-Based Authorization in ASP.NET Core - Getting Started
- Policy-based Authorization in ASP.NET Core โ A Deep Dive
- ASP.NET Core Identity Claims based Authorization
๐น Videoes
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Logging
๐ Articles
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Tracing
๐ Articles
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>EF Core
๐ Articles
- Announcing the Release of EF Core 5.0
- Entity Framework Core 5 free resources
- What's New in EF Core 5.0
- Calling Stored Procedures with the Entity Framework in .NET 5
- EF Core 5: Building on the Foundation
- Entity Framework Core 5 Resources Iโve Created Recently
- Entity Framework Core 5 vs SQLBulkCopy
- Entity Framework Core health check
- Entity Framework Core 3.0: A Foundation for the Future
- Useful SQL statements when writing EF Core 5 migrations
- Adding Entity Framework Core 5 migrations to .NET 5 project
- Merging migrations in Entity Framework Core 5
- Executing raw SQL with Entity Framework Core 5
- PrimeHotel โ adding Entity Framework Core 5 in .NET
- Working with views in Entity Framework Core 5
- Adding an Entity Framework Core 5 to an existing database
- How to configure relationships in Entity Framework Core 5
- Entity Framework Core โ is it fast?
- Bulk copy with Entity Framework Core 5
- Unit tests in Entity Framework Core 5
- How not to pass parameters in Entity Framework Core 5
- Select data with a stored procedure with Entity Framework Core 5
- How to call stored procedures with OUTPUT parameters with FromSqlRaw in EF Core
- Query non-table classes using ad-hoc (raw) SQL with EF Core 3.1
- Execute a stored procedure with Entity Framework Core 5
- Mapping and using SQL Server stored procedures with EF Core Power Tools
- Avoiding SQL Server plan cache pollution with EF Core 3 and Enumerable.Contains
- How to pass a dynamic/variable list of values as SqlParameters with FromSqlRaw in EF Core
- How to call stored procedures with OUTPUT parameters with FromSqlRaw in EF Core
- EF Core Power Tools database reverse engineering: renaming of entities and properties
๐ฆ Libraries
Bring power of Linq To DB to Entity Framework Core projects
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>reverse engineering, migrations and model visualization for EF Core
Environment
๐ Articles
- How to set the hosting environment in ASP.NET Core
- Configuring multiple ASP.NET Core hosting environment
Mapping
๐ Articles
Implement Automapper in ASP.NET Core 3.1 โ Ultimate Guide
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>๐ฆ Libraries
A fast, fun and stimulating object to object Mapper.
๐น Videoes
-
Mapster, the best .NET mapper that you are (probably) not using
-
Domain to Contract mapping with Automapper | ASP.NET Core 5 REST API Tutorial 20
Benchmarking
๐ฆ Libraries
Powerful .NET library for benchmarking
๐น Videoes
<div align="right"> <b><a href="#contents">โฅ Back To Top</a></b> </div>Others
๐ Articles
- Building a social media platform without going bankrupt Part IโLaying the numbers
- Building a social media platform without going bankrupt Part IIโAccepting posts
- Building a social media platform without going bankrupt Part IIIโReading posts
- Building a social media platform without going bankrupt Part IVโCaching and distribution
- Building a social media platform without going bankrupt Part VโHandling the timeline
- Building a social media platform without going bankrupt Part VIโDealing with edits and deletions
- Building a social media platform without going bankrupt Part VIIโCounting views, replies and likes
- Building a social media platform without going bankrupt Part VIIIโTagging and searching
- Building a social media platform without going bankrupt Part IXโDealing with the past