Dotnet has [their own internal source generator](https://github.com/dotnet/roslyn-analyzers/pull/4897), transforming resx files into strongly typed objects. From a quick look, it has a few cool options. We should aim for feature parity