You did not initialize the property, so the value a.dicis null (the default for any reference type).
You will need something like:
a.dic = new Dictionary<int, string>();
... or you can initialize it in the constructor.
On the other hand, it is rarely possible to have such direct access to the inner workings of a class - here you have no encapsulation.
source
share