Dot notation is for member access.. the parenthesis denote method invocation.. without them it would be property/field access.


The point being, ToString isn't a property of an object.. it is a method.. a method that says, give me a string representation of this object.


(skipping your above code which I'm sure someone else will comment on).