Sont immuables tableaux possible .NET?

Est-il possible de faire en quelque sorte marquer un System.Array comme immuable. Lorsqu'il est mis derrière un public-get/privé, ils ne peuvent pas être ajoutés à, car il nécessite une ré-affectation et de réaffectation, mais un consommateur peut toujours définir un quelconque indice qu'ils souhaitent:

public class Immy
{
    public string[] { get; private set; }
}

Je pensais que le readonly mot-clé pourrait faire l'affaire, mais pas de chance.

  • Cette propriété est manquant un nom, n'est-ce pas?
  • La propriété est appelé "immuable" - c'est dans ce sens que les chaînes sont immuables (sauf si vous accédez à la char pointeur de code non sécurisé, qui vous ne devriez vraiment pas faire parce qu'ils sont internés.)
  • Gardez à l'esprit qu'un immuable tableau est seulement aussi immuables que ses membres. @PhilWhittington qu'Il voulait dire dans le code de la propriété en manque un nom. C'est syntaxiquement incorrect. Ce n'est pas vraiment destiné à être un exemple de travail, cependant.
  • Je sais que c'était il y a quelques années, mais Svish le soulignait, vous devriez avoir public string[] variablename { ... } Il dit, que la propriété est manquant un nom...
  • C'est peut-être pas réel, mais plus il y a un System.Collections.Immutable.ImmutableArray in.net
  • S'il vous plaît être conscient que immutabilité et en lecture seule ne sont pas les mêmes. Vous pouvez en lire plus à ce sujet ici.