Asp.Net Core Web Api (edit)
- API Docs with Swagger & Swagger UI
- API Version (multiple version)
- API Example
- API Authorization Bearer JWT in Swagger
- Authorization section in the Swagger UI
- Custom Environment in ASP.NET Core
- API Security uses multiple access tokens
- API Logging: Request & Response
- C# is the best
https://www.talkingdotnet.com/clean-way-to-add-swagger-asp-net-core-application/
https://www.talkingdotnet.com/create-petstore-like-swagger-ui-asp-net-core-web-api/
https://www.talkingdotnet.com/add-swagger-to-asp-net-core-2-0-web-api/
https://www.talkingdotnet.com/support-multiple-versions-of-asp-net-core-web-api/
https://exceptionnotfound.net/setting-aspnetcore_environment-using-a-web-config-file/
C# is the best
https://github.com/exceptionnotfound/CSharpInSimpleTerms
This series is also available as a PDF; you can download it from here.
As always, pull requests are welcome!
- Introduction
- The Type System
- Primitive Types, Literals, and Nullables
- Casting, Conversion, and Parsing
- Operators
- Code Blocks, Basic Statements, and Loops
- Methods, Parameters, and Arguments
- Classes and Members
- Structs and Enums
- Inheritance and Polymorphism
- Interfaces and Abstract Classes
- Namespaces
- Exceptions and Exception Handling
- Arrays and Collections
- LINQ Basics
- Generics
- Tuples and Anonymous Types
- Attributes and Reflection
- Expressions, Lambdas, and Delegates
- String Manipulation and Cultures
- Dates and Times
- Indexers
- Iterators
Logging
https://www.exceptionnotfound.net/using-middleware-to-log-requests-and-responses-in-asp-net-core/
Rest Libraries
The automatic type-safe REST library for .NET Core, Xamarin and .NET. Heavily inspired by Square's Retrofit library, Refit turns your REST API into a live interface.
https://github.com/reactiveui/refit
The automatic type-safe REST library for .NET Core, Xamarin and .NET. Heavily inspired by Square's Retrofit library, Refit turns your REST API into a live interface.
new JsonSerializerSettings { ContractResolver = new SnakeCasePropertyNamesContractResolver() ...
new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() ...
Easy-to-use typesafe REST API client library for .NET Standard 1.1 and .NET Framework 4.5 and higher, which is simple and customisable. Inspired by Refit
https://github.com/canton7/RestEase/
Easy-to-use typesafe REST API client library for .NET Standard 1.1 and .NET Framework 4.5 and higher, which is simple and customisable. Inspired by Refit
Swagger UI (OpenApi) with Authorization code flow + PKCE using Swashbuckle ASP.NET Core
https://lurumad.github.io/swagger-ui-with-pkce-using-swashbuckle-asp-net-core/ (HAY HAY HAY)
ASP.NET Core Swagger UI Authorization using IdentityServer4
https://www.scottbrady91.com/Identity-Server/ASPNET-Core-Swagger-UI-Authorization-using-IdentityServer4/ (HAY HAY HAY)
SECURING AN ASP.NET CORE API WHICH USES MULTIPLE ACCESS TOKENS
https://damienbod.com/2020/12/03/securing-an-asp-net-core-api-which-uses-multiple-access-tokens/ (HAY HAY HAY)
A sample for using Swashbuckle Swagger v5.5.1 with Jwt Token support
https://github.com/capcom923/MySwashBuckleSwaggerWithJwtToken (HAY HAY HAY)
https://www.talkingdotnet.com/define-a-custom-environment-in-asp-net-core/
TechMindFactory.com
Microsoft Azure AD + ASP.NET Core Web API
https://pradeeploganathan.com/
- https://pradeeploganathan.com/rest/rest-architectural-constraints/
- https://pradeeploganathan.com/asp-net/asp-net-core-framework-lifecycle/
- https://pradeeploganathan.com/patterns/repository-and-unit-of-work-pattern-asp-net-core-3-1/
- https://pradeeploganathan.com/api/dates-in-apis/
- https://pradeeploganathan.com/aspnetcore/https-in-asp-net-core-31/
- https://pradeeploganathan.com/rest/add-security-requirements-oas3-swagger-netcore3-1-using-swashbuckle/
TechMindFactory.com
Sample ASP.NET Core API requiring Azure AD authentication
This app was made for my blog article series where we look at testing Azure AD-protected APIs.
- https://joonasw.net/view/testing-azure-ad-protected-apis-part-1-swagger-ui
- https://joonasw.net/view/testing-azure-ad-protected-apis-part-2-postman
- https://joonasw.net/view/testing-azure-ad-protected-apis-part-3-automated-integration-tests
- https://joonasw.net/view/testing-azure-ad-protected-apis-part-4-github-actions-ci-workflow
- https://joonasw.net/view/testing-azure-ad-protected-apis-part-5-pipelines-in-azure-devops
Bearer JWT (Server generate token)
https://pradeeploganathan.com/security/jwt/
https://pradeeploganathan.com/security/jwt-tokenserver/ (JWT – CREATING A TOKEN SERVER)
https://pradeeploganathan.com/angular/jwt-angular-interceptor/
Serialize Exceptions as JSON
https://pradeeploganathan.com/api/serialize-exceptions-as-json-using-custom-middleware-in-net-core/
ISO 8601 Date
The formats for an ISO8601 date are as follows:
- Year: YYYY (2018)
- Year and month: YYYY-MM (2018-04)
- Complete date: YYYY-MM-DD (2018-04-25)
- Complete date plus hours and minutes: YYYY-MM-DDThh:mmTZD (2018-04-25T18:00+01:00)
- Complete date plus hours, minutes, and seconds: YYYY-MM-DDThh:mm:ssTZD (2018-04-25T18:00:30+01:00)
- Complete date plus hours, minutes, seconds, and a decimal fraction of a second: YYYY-MM-DDThh:mm:ss.sTZD (2018-04-25T18:00:30.45+01:00)
The letters used in the above format are:
- YYYY: Four-digit year
- MM: Two-digit month (01 = January, and so on)
- DD: Two-digit day of month (01 through 31)
- hh: Two digits of hour (00 through 23, a.m./p.m. NOT allowed)
- mm: Two digits of minute (00 through 59)
- ss: Two digits of second (00 through 59)
- s: One or more digits representing a decimal fraction of a second
- TZD: Time zone designator (Z or +hh:mm or -hh:mm)