S3441 — Redundant property names should be omitted in anonymous classes

Language
C#
Type
Code smell
Severity
Minor
Tags
finding, clumsy

Why is this an issue?

When an anonymous type’s properties are copied from properties or variables with the same names, it yields cleaner code to omit the new type’s property name and the assignment operator.

Noncompliant code example


var X = 5;

var anon = new
{
  X = X, //Noncompliant, the new object would have the same property without the "X =" part.
  Y = "my string"
};

Compliant solution


var X = 5;

var anon = new
{
  X,
  Y = "my string"
};

↑ Back to top