C# Error CS0623 – Array initializers can only be used in a variable or field initializer. Try using a new expression instead.

C# Error

CS0623 – Array initializers can only be used in a variable or field initializer. Try using a new expression instead.

Reason for the Error & Solution

Array initializers can only be used in a variable or field initializer. Try using a new expression instead.

An attempt was made to initialize an array by using an array initializer in a context where it is not allowed.

Example

The following example produces CS0623 because the compiler interprets the {4} as embedded array initializer inside the outer array initializer:

//cs0632.cs  
using System;  
  
class X  
{  
    public int[] x = { 2, 3, {4}}; //CS0623  
}