With aspnet core 3.x, the default Text JSON serializer as well as the Newtonsoft extension (if you're still holding on to Newtonsoft like I am) apply a camel casing naming strategy.
This means that for your upper case properties in C# land, they get translated to lower case starting letters in javascript. This is great. Unless you're dealing with a legacy codebase where the javascript is expecting the starting upper cases.
The fix is easy. Just set contract resolver in your Startup to an instance of DefaultContractResolver.