← back to index

S2376 — Write-only properties should not be used

Language: C#  |  Type: CODE_SMELL  |  Severity: Major

Tags: pitfall

Why is this an issue?

Properties with only setters are confusing and counterintuitive. Instead, a property getter should be added if possible, or the property should be replaced with a setter method.

Noncompliant code example

class Program
{
    public int Foo  //Non-Compliant
    {
        set
        {
            // ... some code ...
        }
    }
}

Compliant solution

class Program
{
    private int foo;

    public void SetFoo(int value)
    {
        // ... some code ...
        foo = value;
    }
}

or

class Program
{
  public int Foo { get; set; } // Compliant
}