If you have ever tried to look at a System.DateTime or System.TimeSpan object in a debugger, you know how difficult it is to see what the value is. For example, this is what a System.DateTime object looks like:
0:017> !do 0x040f59b8
Name: System.DateTime
MethodTable: 60809f0c
EEClass: 605e1fd8
Size: 16(0x10) bytes
GC Generation: 2
(C:\Windows\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll)
Fields:
MT Field Offset Type VT Attr Value Name
6080ab9c 40000f4 4 System.UInt64 1 instance 633739266270770000 dateData
6082aa5c 40000f0 30 System.Int32[] 0 shared static DaysToMonth365
>> Domain:Value 0097ce58:03d6cad0 <<
6082aa5c 40000f1 34 System.Int32[] 0 shared static DaysToMonth366
>> Domain:Value 0097ce58:03d6cb10 <<
60809f0c 40000f2 28 System.DateTime 1 shared static MinValue
> ...
Go to the complete details ...