J'ai un dictionnaire comme l'un des champs de la structure de la partie valeur d'un autre dictionnaire afin qu'un cours puisse contenir plusieurs classes, chacune avec son propre professeur et étudiants comme suit:dictionnaire .net dans le dictionnaire: ajouter de nouveaux éléments au dictionnaire interne
Structure course
Dim description As String
Structure classs
Dim teacherCode As String
Dim studentIDs() As Integer
End Structure
Dim classes As Dictionary(Of String, classs) 'key=classCode
End Structure
Structure courseKey
Dim name As String
Dim yearLevel As Short
End Structure
Dim courses As New Dictionary(Of courseKey, course)
Je peux construire un courseKey et créer un cours vide entrée dans le dictionnaire en utilisant un sous-dictionnaire classs vide avec courses.Add (courseKey, bien sûr), mais je ne peux pas travailler comment (ou, en fait, si c'est possible) pour créer une nouvelle entrée de dictionnaire de cours avec un sous-dictionnaire de classes non vides. Je m'attendais à pouvoir faire quelque chose comme ça pour créer une classe puis l'ajouter au cours, mais obtenir une NullReferenceException (même si courses (courseKey) référence l'élément de dictionnaire approprié, et quand classCode est une chaîne valide et que les classes sont une instance valide de la structure classs comportant des données):
courses(courseKey).classes.Add(classCode, classs)
Suis-je manque quelque chose évidente? Je prévoyais d'avoir quelques structures de données comme celle-ci, certaines avec plusieurs dictionnaires dans un autre dictionnaire. Si ce n'est pas possible, peut-être y a-t-il un meilleur moyen?
Quelle expression était nulle? Trouver. Je suis tenté de fermer cela comme un double de la question canonique NRE. Je ne vois pas comment cette affaire est spéciale. – usr