const Dictionnaire en c#

J'ai une classe en C# qui contient un Dictionnaire, j'ai envie de créer et de s'assurer que rien n'ajoutés, modifiés ou supprimés à partir de ce dictionnaire aussi longtemps que la classe qui le contient existe.

en lecture seule n'aide pas vraiment, une fois que j'ai testé et vu que je peux ajouter des articles après. Juste pour exemple, j'ai créé un exemple:

public class DictContainer
{
    private readonly Dictionary<int, int> myDictionary;

    public DictContainer()
    {
        myDictionary = GetDictionary();
    }

    private Dictionary<int, int> GetDictionary()
    {
        Dictionary<int, int> myDictionary = new Dictionary<int, int>();

        myDictionary.Add(1, 2);
        myDictionary.Add(2, 4);
        myDictionary.Add(3, 6);

        return myDictionary;
    }

    public void Add(int key, int value)
    {
        myDictionary.Add(key, value);
    }

}

Je veux la méthode Add de ne pas travailler. Si possible, je veux pas de même de la compilation. Des suggestions?

En fait, je suis inquiet car c'est le code qui sera ouvert pour beaucoup de gens à changer. Donc, même si je me cache de la méthode Add, il sera possible pour quelqu'un de "innocemment" créer une méthode qui ajoute une touche ou en supprimer un autre. Je veux que les gens regardent et savent qu'ils ne faut pas changer le dictionnaire de toutes les manières. Comme j'ai une variable const.

Étrange exigences de suggérer que votre conception a des problèmes. Vous voudrez peut-être repenser ce que vous tentez ici. Sinon, vous pouvez facilement créer votre propre mise en œuvre qui fait cela.
Vous pouvez implémenter votre propre Dictionnaire. Question similaire: stackoverflow.com/questions/35002/...

OriginalL'auteur Samuel Carrijo | 2009-05-12