I'm working on some VB.net code that I inherited and am seeing some very strange behavior when trying to lookup a value in a Interop.Scripting.Dictionary object.
Here's the output from my watches. The expressions are in italics and the return values are bolded:
oAwayBalanceTeam.Dates("40068") 1 {Integer} Object
CStr(Int(oTempBooking.StartDateTime.ToOADate)) "40068" String
oAwayBalanceTeam.Dates(CStr(Int(oTempBooking.StartDateTime.ToOADate))) Nothing Object
Notice the first watch returns an integer with a value of 1 when a string literal key of "40068" is passed in. The second watch returns the string "40068". However, when passing the expression from the second watch as the key value in the 3rd watch Nothing is returned.
Anyone have any ideas what's going on here?