A little outdated, but IMHO, still high valuable.
- C# Language features/status
- C# Language design meetings notes
- API Reviews
- .NET Releases Documentation
- API diffs
- Supported OS,
- etc
- https://dotnet-presentations.github.io/
- https://github.com/dotnet/samples/tree/master/core
-
The zen of async Best practices for best performance
- Alternative video source with better quality.
-
Back to Basics: Efficient Async and Await - Filip Ekberg - NDC London 2022
-
Understanding the Whys, Whats, and Whens of ValueTask - Stephen Toub - Nov/2018
-
Not sure if those are good or not
https://joshvarty.com/learn-roslyn-now/
- Overview
- https://andrewlock.net/creating-a-source-generator-part-6-saving-source-generator-output-in-source-control/
- Video 1
- Video 2
- Good example from dev from vidoes above
It looks like that adding
<AnalysisMode>All</AnalysisMode>
is not enough to get the analyzer to report all diagnostics aswarnings
. The best way I found was to add<AnalysisLevel>6-all</AnalysisLevel>
(oddly,7-all
did not work; it looks like on my Macbook I am missing the editorconfig files for 7.0 - see /usr/local/share/dotnet/sdk/7.0.100/Sdks/Microsoft.NET.Sdk/analyzers/build/config/)
-
Deploy ASP.Net Core on linux: https://www.tonyranieri.com/blog/2017/10/27/Hosting-.Net-Core-On-Linux/
-
Deploy DotNet Core to docker: https://channel9.msdn.com/Events/dotnetConf/2016/Deploying-ASPNET-Core-applications-using-Docker-Containers
-
GraphQL : https://codetraveler.io/dotnetgraphql/
- https://docs.microsoft.com/en-us/dotnet/standard/assembly/unloadability-howto
- How to use and debug assembly unloadability in .NET
- AppDomain Replacement
-
new() constraint:
-
Span
- https://www.stevejgordon.co.uk/an-introduction-to-optimising-code-using-span-t
- https://blogs.msdn.microsoft.com/mazhou/2018/03/25/c-7-series-part-10-spant-and-universal-memory-management/
- Spanify (lots of useful? information on how to make best use of Span<T>/RedaOnlySpan<T>)
-
Performance Analysis on Linux: https://www.youtube.com/watch?v=y4-h3qyDpJo&t=797s
-
Using static readonly values to hint JIT that branches can be eliminated