private DataTypePrecedence GetPrecedence(StorageType storageType)
{
switch (storageType)
{
case StorageType.Boolean: return DataTypePrecedence.Boolean;
case StorageType.Char: return DataTypePrecedence.Char;
case StorageType.SByte: return DataTypePrecedence.SByte;
case StorageType.Byte: return DataTypePrecedence.Byte;
case StorageType.Int16: return DataTypePrecedence.Int16;
case StorageType.UInt16: return DataTypePrecedence.UInt16;
case StorageType.Int32: return DataTypePrecedence.Int32;
case StorageType.UInt32: return DataTypePrecedence.UInt32;
case StorageType.Int64: return DataTypePrecedence.Int64;
case StorageType.UInt64: return DataTypePrecedence.UInt64;
case StorageType.Single: return DataTypePrecedence.Single;
case StorageType.Double: return DataTypePrecedence.Double;
case StorageType.Decimal: return DataTypePrecedence.Decimal;
case StorageType.DateTime: return DataTypePrecedence.DateTime;
case StorageType.DateTimeOffset: return DataTypePrecedence.DateTimeOffset;
case StorageType.TimeSpan: return DataTypePrecedence.TimeSpan;
case StorageType.String: return DataTypePrecedence.String;
case StorageType.SqlBinary: return DataTypePrecedence.SqlBinary;
case StorageType.SqlBoolean: return DataTypePrecedence.SqlBoolean;
case StorageType.SqlByte: return DataTypePrecedence.SqlByte;
case StorageType.SqlBytes: return DataTypePrecedence.SqlBytes;
case StorageType.SqlChars: return DataTypePrecedence.SqlChars;
case StorageType.SqlDateTime: return DataTypePrecedence.SqlDateTime;
case StorageType.SqlDecimal: return DataTypePrecedence.SqlDecimal;
case StorageType.SqlDouble: return DataTypePrecedence.SqlDouble;
case StorageType.SqlGuid: return DataTypePrecedence.SqlGuid;
case StorageType.SqlInt16: return DataTypePrecedence.SqlInt16;
case StorageType.SqlInt32: return DataTypePrecedence.SqlInt32;
case StorageType.SqlInt64: return DataTypePrecedence.SqlInt64;
case StorageType.SqlMoney: return DataTypePrecedence.SqlMoney;
case StorageType.SqlSingle: return DataTypePrecedence.SqlSingle;
case StorageType.SqlString: return DataTypePrecedence.SqlString;
// case StorageType.SqlXml: return DataTypePrecedence.SqlXml;
case StorageType.Empty:
case StorageType.Object:
case StorageType.DBNull:
default: return DataTypePrecedence.Error;
}
}