I noticed when I have [Serializable]
instead of [Serializable()]
, the code still compiles.
Is there a rule for this that you can omit the parentheses? Is it a good practice? It seems more readable to me unless I am missing something.
There's no particular rule regarding best practices that I've seen anywehere on the subect.
Generally, I find that people who hand-type their attributes omit the empty parens, but code generation almost always explicitly includes them.
You can miss off the ()
when the attribute constructor you want to use has no parameters, and you don't want to specify any optional parameters (property values).
See here for more details
Yes omitting the attribute is legal from a language standpoint. I don't know of any best practices surrounding it but in general I find developers omit the parens if they're not necessary.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With