private StorageClass GetStorageClass(Type type) { var retval = StorageClass.XMLSerialized; TypeSwitch.DoType(type, TypeSwitch.Case <string>(() => retval = StorageClass.String), TypeSwitch.Case <int>(() => retval = StorageClass.Integer), TypeSwitch.Case <bool>(() => retval = StorageClass.Bool), TypeSwitch.Case <float>(() => retval = StorageClass.Float), TypeSwitch.Case <double>(() => retval = StorageClass.Double), TypeSwitch.Default(() => retval = StorageClass.XMLSerialized) ); return(retval); }
private StorageClass GetStorageClass(Type type) { var retval = StorageClass.XMLSerialized; TypeSwitch.DoType(type, TypeSwitch.Case <string>(() => retval = StorageClass.String), TypeSwitch.Case <bool>(() => retval = StorageClass.Bool), TypeSwitch.Case <bool?>(() => retval = StorageClass.Bool), TypeSwitch.Case <byte>(() => retval = StorageClass.Integer), TypeSwitch.Case <byte?>(() => retval = StorageClass.Integer), TypeSwitch.Case <sbyte>(() => retval = StorageClass.Integer), TypeSwitch.Case <sbyte?>(() => retval = StorageClass.Integer), TypeSwitch.Case <short>(() => retval = StorageClass.Integer), TypeSwitch.Case <short?>(() => retval = StorageClass.Integer), TypeSwitch.Case <ushort>(() => retval = StorageClass.Integer), TypeSwitch.Case <ushort?>(() => retval = StorageClass.Integer), TypeSwitch.Case <int>(() => retval = StorageClass.Integer), TypeSwitch.Case <int?>(() => retval = StorageClass.Integer), TypeSwitch.Case <uint>(() => retval = StorageClass.Integer), TypeSwitch.Case <uint?>(() => retval = StorageClass.Integer), /*TypeSwitch.Case<long>((x) => {throw new NotSupportedException(string.Format("Settings of type {0} not supported", x.GetType().Name)); }), * TypeSwitch.Case<long?>((x) => {throw new NotSupportedException(string.Format("Settings of type {0} not supported", x.GetType().Name)); }), * TypeSwitch.Case<ulong>((x) => {throw new NotSupportedException(string.Format("Settings of type {0} not supported", x.GetType().Name)); }), * TypeSwitch.Case<ulong?>((x) => {throw new NotSupportedException(string.Format("Settings of type {0} not supported", x.GetType().Name)); }),*/ TypeSwitch.Case <float>(() => retval = StorageClass.Float), TypeSwitch.Case <float?>(() => retval = StorageClass.Float), TypeSwitch.Case <double>(() => retval = StorageClass.Double), TypeSwitch.Case <double?>(() => retval = StorageClass.Double), TypeSwitch.Case <decimal>(() => retval = StorageClass.Double), TypeSwitch.Case <decimal?>(() => retval = StorageClass.Double), TypeSwitch.Case <DateTime>(() => retval = StorageClass.DateTime), TypeSwitch.Case <DateTime?>(() => retval = StorageClass.DateTime), TypeSwitch.Case <Enum>(() => retval = StorageClass.Enum), TypeSwitch.Default(() => retval = StorageClass.XMLSerialized) ); return(retval); }