.Equals
and==
have different meaning in C#. Decent IDEs will warn you about that (and yes, that excludes Visual Studio, but that always was crap 😄).- As for (re)assignments - I don’t see an issue with that, tbh; you only have to be aware of whether you’re using a reference- or value type (and if you aren’t, then let’s be honest - you have bigger problems).
I admit, “canonical C#” looks like shit due to a fuckton of legacy stuff. Fortunately, newer patterns solve that rather neatly and that started way back in C# 6 or 7 (with arrow functions / props and inlined out
s).
Tl;dr: check the new features, fiddle with the language yourself. Because hell, with ref struct
s you can make it behave like quasi-Rust
Tbh, while it is funny out-of-context, I encountered the same exact thing (and I can guaran-fuckin-tee the offender used copilot for this).
It’s not funny to be on the receiving end of this, ESPECIALLY in professional environment, where you should not react like that 😅