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
}

↑ Back to top