Я работаю над некоторым кодом VB.net, который унаследовал, и вижу очень странное поведение при поиске значения в объекте Interop.Scripting.Dictionary.
Вот вывод из моих часов. Выражения выделены курсивом, а возвращаемые значения выделены жирным шрифтом:
oAwayBalanceTeam.Dates ("40068") 1 {Integer} Object
CStr (Int (oTempBooking.StartDateTime.ToOADate)) "40068" Строка
oAwayBalanceTeam.Dates (CStr (Int (oTempBooking.StartDateTime.ToOADate))) Ничего Объект
Обратите внимание, что первые часы возвращают целое число со значением 1, когда передается строковый литерал с ключом "40068". Вторые часы возвращают строку "40068". Однако при передаче выражения из вторых часов в качестве значения ключа в 3 часах ничего не возвращается.
У кого-нибудь есть идеи, что здесь происходит?