is there a difference between [Serializable] and [Serializable()] in c#?
.net, c#, serialization
Solution
Nope, no functional difference.
Why the 2 different styles, you ask? The first notation is allowed for brevity. The 2nd notation is allowed because some attributes take parameters:
[Category("Foobar related methods.")]
public void Foo()
{
}
Also note that [Serializable] is really just short-hand for [SerializableAttribute()] - C# lets you omit the Attribute suffix as well as the empty constructor parens.
Problem
I've bumped into examples using either of both notations. I can't find anything about it what tells which one is the common one, why 2 notations are allowed, and if there is actually any subtle difference between the two. anyone an idea?