Je travaille sur du code VB.net dont j'ai hérité et je vois un comportement très étrange en essayant de rechercher une valeur dans un objet Interop.Scripting.Dictionary.Problème d'évaluation très étrange
Voici la sortie de mes montres. Les expressions sont en italique et les valeurs de retour sont bolded:
oAwayBalanceTeam.Dates ("40068") {entier} Objet
CStr (Int (oTempBooking.StartDateTime.ToOADate))"40068" chaîne
oAwayBalanceTeam.Dates (CSTR (Int (oTempBooking.StartDateTime.ToOADate)))Nothing objet
Notez que la première surveillance renvoie un entier avec une valeur de 1 lorsqu'une clé littérale chaîne de "40068" est transmise. La seconde surveillance renvoie la chaîne "40068". Cependant, lorsque vous passez l'expression de la seconde montre comme valeur de clé dans la troisième montre, rien n'est renvoyé.
Quelqu'un a-t-il une idée de ce qui se passe ici?
Malheureusement, je ne peux pas facilement résumer. Le code est vraiment moche. Il ya des centaines de lignes pour obtenir l'image complète ici et s'étend sur 3 ou 4 fichiers de code. J'ai copié les montres à partir du même point de rupture, même si cela aide du tout. J'utilise: Microsoft Visual Studio 2008 Version 9.0.21022.8 RTM Microsoft .NET Framework version 3.5 SP1 Microsoft Visual Basic 2008 91904-270-9795282-60037 –
Quel est le type de oAwayBalanceTeam.Dates? – JaredPar
Interop.Scripting.Dictionary –