SA1503: CurlyBracketsMustNotBeOmitted

StyleCop

TypeName

CurlyBracketsMustNotBeOmitted

CheckId

SA1503

Category

Layout Rules

Cause

The opening and closing curly brackets for a C# statement have been omitted.

Rule Description

A violation of this rule occurs when the opening and closing curly brackets for a statement have been omitted. In C#, some types of statements may optionally include curly brackets. Examples include if, while, and for statements. For example, an if-statement may be written without curly brackets:

    if (true)

        return this.value;

Although this is legal in C#, StyleCop always requires the curly brackets to be present, to increase the readability and maintainability of the code.

When the curly brackets are omitted, it is possible to introduce an error in the code by inserting an additional statement beneath the if-statement. For example:

    if (true)

        this.value = 2;      

        return this.value;

Glancing at this code, it appears as if both the assignment statement and the return statement are children of the if-statement. In fact, this is not true. Only the assignment statement is a child of the if-statement, and the return statement will always execute regardless of the outcome of the if-statement.

StyleCop always requires the opening and closing curly brackets to be present, to prevent these kinds of errors:

    if (true)

    {

        this.value = 2;      

        return this.value;

    }

 

How to Fix Violations

To fix a violation of this rule, wrap the body of the statement in curly brackets.