\r
public static void WritePrimitiveValue (BinaryWriter writer, object value)\r
{\r
- switch (Type.GetTypeCode (value.GetType()))\r
+ Type type = value.GetType();\r
+\r
+ switch (Type.GetTypeCode (type))\r
{\r
case TypeCode.Boolean:\r
writer.Write ((bool)value);\r
break;\r
\r
default:\r
- throw new NotSupportedException ("Unsupported primitive type: " + value.GetType().FullName);\r
+ if (type == typeof (TimeSpan))\r
+ writer.Write (((TimeSpan)value).Ticks);\r
+ else\r
+ throw new NotSupportedException ("Unsupported primitive type: " + value.GetType().FullName);\r
+ break;\r
}\r
}\r
\r