EF Core 6 ships with .NET 6 and brings several performance and usability improvements. Here are the highlights. 1. Compiled Models Pre-compile your model to avoid expensive startup reflection. 2. Temporal Tables (SQL Server) 3. Pre-Convention Model Configuration Apply conventions like “all strings max 256” globally. 4. Migration Bundles Package migrations as executables for CI/CD. […]
Read more →C# 10: Validating Arguments with CallerArgumentExpression
Writing guard clauses like `ArgumentNullException.ThrowIfNull(value)` is great, but error messages often lack context. CallerArgumentExpression captures the expression text at compile time. Example Key Takeaways Zero runtime overhead—it’s a compile-time feature. Use in custom assertion libraries or fluent validation.
Read more →Visual Studio 2022 GA: 64-bit Era Begins
Alongside .NET 6, Visual Studio 2022 is now GA. It is the first 64-bit version of the IDE. I tested it by opening a solution with 100 projects. In VS 2019, this would cause “Out of Memory” crashes or massive lag. In VS 2022, it used 5GB of RAM and stayed buttery smooth. IntelliCode also […]
Read more →Visual Studio 2022 GA: 64-bit
VS 2022 is finally 64-bit. We can open 10GB solutions.
Read more →Azure Bicep: Private Registry Support
Bicep modules can now be published to a **Private Azure Container Registry (ACR)**, enabling enterprise-scale sharing and versioning of infrastructure templates. Publishing a Module Consuming from Registry Key Takeaways Versioning (`v1.0`) enables safe rollouts and rollbacks. Authenticate using `az login` or a Service Principal in CI/CD.
Read more →React 18 Alpha: Automatic Batching
React 18 (in alpha at this time) introduces **Automatic Batching**. Previously, React only batched state updates inside event handlers. Now it batches everywhere—setTimeout, Promises, native events. Before React 18 After React 18 Key Takeaways Use `flushSync` if you explicitly need an immediate render. This reduces rendering overhead significantly in complex apps.
Read more →