In the previous post of this series, Dave Brock discussed the init-only features of C# 9, which allowed us to make individual properties immutable. That works great on a case-by-case basis, but the real power in leveraging C# immutability is when we can do this for custom types. This is where records shine.
This is the second post in a five-post series on C# 9 features in-depth.
Source: C# 9 Deep Dive: Records | Dave Brock
No more secrets stored in local files or registry!
Making secrets a first-class citizen in .NET Core
Source: Introducing Secret Store
gRPC-Web for .NET is now officially released. Use gRPC in the browser with gRPC-Web and .NET today.
Source: gRPC-Web for .NET now available | ASP.NET Blog
Here’s the umbrella of .NET 5 to the rescue. It’s a MAJOR change because of the following reasons:
As the first part of this unification scheme, Microsoft’s Xamarin mobile development platform will switch from using the Mono BCL to join other components leveraging the .NET Core BCL. With that move, Xamarin mobile development will be folded into .NET 5. That means that for the first time, one BCL-based framework will handle all app models:
- ASP.NET Core
- Entity Framework Core
Wait, WPF and WinForms made it into .NET 5? Yes, it’s true. Hello there, old friends! Nice to see them included in this runtime. The idea of using one SDK to build apps with is pretty exciting stuff, if you ask me.
Source: The Most Exciting Promise of .NET 5 | Okta Developer
Source: Blazor’s Future: gRPC Is Key — Visual Studio Magazine
Probably the most impactful feature of C# 8.0 is Nullable Reference Types (NRTs). It lets you make the flow of nulls explicit in your code, and warns you when you don’t act according to intent. The NRT feature holds you to a higher standard on how you deal with nulls,
Source: Embracing nullable reference types | .NET Blog
.NET Core will become the successor to .NET, which will bring lots of upsides and few gotchas along the way as .NET Framework is shelved.
Source: .NET is Dead, Long Live .NET
Rapidly create Shell Context Menu Extensions using .NET
Source: .NET Shell Extensions – Shell Context Menus – CodeProject
Are you storing passwords in your source code? Don’t!
How to set up and use an Azure key vault to store your secret values.
Source: How to Use Microsoft Azure Key Vault – CodeProject
Converting nearly every type to another type in .NET
“.NET does not provide a generic way for conversions across all types. Even the base types are not handled the same way. And not all possible conversions across the base types are supported. We had a look at the different techniques and ended up with the
UniversalTypeConverter as a generic solution filling the gaps and with some useful options on top.
Maybe, it is a historical thing that
TypeConverter is not used on all types. But this is definitely the way to go if you want to provide your own types being convertible.”
Source: Universal Type Converter – CodeProject