public long getLong()
{
switch (type)
{
case OValueType.Int: return _int;
case OValueType.Long: return _long;
case OValueType.Double: return (long)_double;
case OValueType.String:
{
if (_string == null || _string.Length == 0)
return 0;
else
return long.Parse(_string);
}
case OValueType.Boolean: return _bool ? 1 : 0;
case OValueType.DateTime: return _date.Ticks;
default: return 0;
}
}