Ответ 1
На самом деле вы пытаетесь сделать массив - ссылочный тип - const
- это не будет влиять на изменчивость его значений вообще (вы все равно можете изменить любое значение в массиве) - создание массива readonly
сделает его компиляцией, но не имеет желаемого эффекта. Константные выражения должны быть полностью оценены во время компиляции, поэтому новый оператор не допускается.
Возможно, вы ищете ReadOnlyCollection<T>
Подробнее см. соответствующую Ошибка компилятора CS0134:
Постоянное выражение - это выражение, которое может быть полностью оценено в время компиляции. Поскольку единственный способ создать ненулевое значение ссылочный тип заключается в применении нового оператора, а потому, что новый оператор не допускается в постоянном выражении, единственно возможным значение для констант ссылочных типов, отличных от строки, равно null.