Convert to/Decompose Initializer

Purpose

Converts a one-by-one initialization of class fields or properties to an object initializer and vice versa. The single-line initializers make your code more compact, although the one-by-one initialization can improve code readability.

Availability

Available when the cursor is on the name of the initialized object.

Usage

  1. Place the caret on the name of the initialized object.

    Note

    The blinking cursor shows the caret's position at which the Refactoring is available.

    Customer <:caret:>Andrew = new Customer();
    Andrew.FirstName = "Andrew";
    Andrew.LastName = "Fuller";
    Andrew.Age = 48;
    
  2. Use the Ctrl + . or Ctrl + ~ shortcut to invoke the Code Actions Menu.
  3. Select Convert to Initializer from the menu (Decompose Initializer if you are decomposing the initializer).

After execution, the Refactoring moves the fields/properties initialization to the object initializer or converts the inline initializer to the one-by-one initialization.

Customer Andrew = new Customer() { FirstName = "Andrew", LastName = "Fuller", Age = 48 };
See Also