Well written thoughts on C#12 primary constructors. Sadly they are not really useful. At least for now.
They’re great for service dependencies. Just removes a lot of boilerplate.
Yes, but not really, because those are not readonly as they should be.
Does that really matter though? It’s a minor issue and it’s very unlikely any one would try to assign to a dependency.
If it really matters to you declare read-only fields and assign them. You still cut out all the lines for constructor assignments as the field assignments take the same amount of space.
Yep, I know I could assign those manually to readonly fields or such. But then I don’t profit much and also risk of field duplication (as described in article). Also I use CodeRush to auto generate constructors for me (after manually typing all readonly fields) - that way I have less typing to do than using primary constructors. I guess CodeRush could do it the other way round as well, but still, there is problem with duplication at least. I don’t know, perhaps is subjective, but I’m avoiding primary constructors for now.
Wow, that was a refreshingly meaty article!