Although I agree with you 100%.
You did notice I was specific to say Property _Procedures_
(by Procedure I mean the Get & Set assessors) and not just
Property. As the Get & Set assessors have statement blocks aka action.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbls7/html/vblrfVBSpec7_6.asp
The problem is Properties are in that grey area where they're both.
Depending on what aspect of a property you are referring to.
The property itself is an attribute, while the get & set assessors are
'actions', which can be Overridden.
For example, You can apply the ConditionalAttribute to any method. This
includes the Get or Set assessor of a Property.
Property Name() As String
<Conditional("DEBUG")> _
Get
return m_name
End Get
<Conditional("DEBUG")> _
Set(ByVal value As String
m_name = value
End Set
End Property
Of course the above Get will not have the desired effect as its returning a
value, and needs to be called in all cases...
Which is where generically I will include Property Assessors as methods. At
the same time generically I include Properties as attributes.