If the property type name is the same as the property name, this is a special case covered by the specification:
7.6.4.1 Identical simple names and type names
In member access of form EI , if E is a single identifier, and if the value of E as a simple name (ยง7.6.2) is a constant, field, property, local variable, or parameter with the same type as the value of E as a type name (ยง 3.8), then both possible values โโof E are allowed. Two possible values โโof EI never ambiguous, since I must be a member of type E in both cases. In other words, the rule simply allows access to static members and nested types of E , where a compile-time error occurred otherwise.
So, in your first fragment of the simplest name Int32 can refer to the Int32 property, as well as to the Int32 type.
In the second fragment, this rule is not applied, and the simple name Int32 refers only to the property.
source share