/// <summary> /// Writes the specified SQL value to the output stream. /// </summary> /// <param name="value"> /// The value to write to the output stream. /// </param> public void WriteValue(object value) { EnsureNotDisposed(); if (value == null) { Write(SqlNull); return; } switch (Type.GetTypeCode(value.GetType())) { case TypeCode.String: case TypeCode.Char: Write(Dialect.FormatString(Convert.ToString(value, CultureInfo.InvariantCulture))); break; case TypeCode.Byte: case TypeCode.Int16: case TypeCode.Int32: case TypeCode.Int64: case TypeCode.SByte: case TypeCode.UInt16: case TypeCode.UInt32: case TypeCode.UInt64: Write(Convert.ToString(value, CultureInfo.InvariantCulture)); break; case TypeCode.Single: case TypeCode.Double: case TypeCode.Decimal: Write(Convert.ToString(value, CultureInfo.InvariantCulture)); break; default: Write(Dialect.FormatString(Convert.ToString(value, CultureInfo.InvariantCulture))); break; } }