Skip to content
Document DB v12 - Improved Interceptors with Soft Delete Integration, AI protections, & Admin UI with Aspire Integration!How!?

Reflector Release Notes

Feature
New ReflectorExpressionExtensions — strongly-typed, expression-based property access. GetPropertyName(x => x.Prop) extracts a property name from a lambda, and IReflectorClass gains GetProperty, GetValue, and SetValue overloads that take an x => x.Prop expression instead of a string key. Unary boxing conversions for value/nullable types are handled automatically
BREAKINGEnhancement
Package renamed from Shiny.Reflector to Shiny.Extensions.Reflector — Reflector is now part of the Shiny.Extensions family. Update package references in your csproj from <PackageReference Include="Shiny.Reflector"/> to <PackageReference Include="Shiny.Extensions.Reflector"/>
BREAKINGEnhancement
Root namespace changed from Shiny.Reflector to Shiny.Extensions.Reflector. Update using Shiny.Reflector; to using Shiny.Extensions.Reflector; (or rely on the implicit <Using Include="Shiny.Extensions.Reflector"/> injected by the package targets)
Enhancement
Repository moved to https://github.com/shinyorg/Shiny.Extensions — version numbering aligned with the rest of the Shiny.Extensions family
Fix
Source generator no longer grab static properties
Enhancement
Fallback true reflection reflector now lazy loads property reflection until it is actually needed
Feature
Built-in System.Text.Json reflector json converter
Feature
New AssemblyInfo generation for improved metadata
Feature
Initial Public Release