Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

Property names should not match get methods

TypeName

PropertyNamesShouldNotMatchGetMethods

CheckId

CA1721

Category

Microsoft.Naming

Breaking Change

Breaking

The name of a public or protected member starts with 'Get' and otherwise matches the name of a public or protected property. For example, a type that contains a method named 'GetColor' and a property named 'Color' violates this rule.

Get methods and properties should have names that clearly distinguish their function.

Naming conventions provide a common look for libraries that target the common language runtime. This reduces the time that is required to learn a new software library, and increases customer confidence that the library was developed by someone with expertise in developing managed code.

Change the name so that it does not match the name of a method prefixed with 'Get'.

Do not suppress a warning from this rule.

NoteNote:

This warning may be excluded if the Get method is caused by implementing IExtenderProvider interface.

The following example contains a method and property that violate this rule.

Imports System

Namespace NamingLibrary

Public Class Test

    Public ReadOnly Property [Date]() As DateTime
        Get 
            Return DateTime.Today
        End Get 
    End Property 

     ' Violates rule: PropertyNamesShouldNotMatchGetMethods. 
    Public Function GetDate() As String 
        Return Me.Date.ToString()
    End Function  

End Class  

End Namespace
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.