/// <summary> /// Clones a parameter so that it can be used with another command. /// </summary> /// <param name="command">The command to use.</param> /// <param name="parameter">The parameter to clone.</param> /// <returns>The clone.</returns> public override IDataParameter CloneParameter(IDbCommand command, IDataParameter parameter) { NpgsqlParameter p = (NpgsqlParameter)parameter; var clone = (NpgsqlParameter)p.Clone(); clone.NpgsqlDbType = p.NpgsqlDbType; return(clone); }
public void Clone_generic() { var expected = new NpgsqlParameter <int> { TypedValue = 42, ParameterName = "TheAnswer", DbType = DbType.Int32, NpgsqlDbType = NpgsqlDbType.Integer, DataTypeName = "integer", Direction = ParameterDirection.InputOutput, IsNullable = true, Precision = 1, Scale = 2, Size = 4, SourceVersion = DataRowVersion.Proposed, SourceColumn = "source", SourceColumnNullMapping = true, }; var actual = (NpgsqlParameter <int>)expected.Clone(); Assert.AreEqual(expected.Value, actual.Value); Assert.AreEqual(expected.TypedValue, actual.TypedValue); Assert.AreEqual(expected.ParameterName, actual.ParameterName); Assert.AreEqual(expected.DbType, actual.DbType); Assert.AreEqual(expected.NpgsqlDbType, actual.NpgsqlDbType); Assert.AreEqual(expected.DataTypeName, actual.DataTypeName); Assert.AreEqual(expected.Direction, actual.Direction); Assert.AreEqual(expected.IsNullable, actual.IsNullable); Assert.AreEqual(expected.Precision, actual.Precision); Assert.AreEqual(expected.Scale, actual.Scale); Assert.AreEqual(expected.Size, actual.Size); Assert.AreEqual(expected.SourceVersion, actual.SourceVersion); Assert.AreEqual(expected.SourceColumn, actual.SourceColumn); Assert.AreEqual(expected.SourceColumnNullMapping, actual.SourceColumnNullMapping); }
/// <summary> /// Clones a parameter so that it can be used with another command. /// </summary> /// <param name="command">The command to use.</param> /// <param name="parameter">The parameter to clone.</param> /// <returns>The clone.</returns> public override IDataParameter CloneParameter(IDbCommand command, IDataParameter parameter) { NpgsqlParameter p = (NpgsqlParameter)parameter; return((IDataParameter)p.Clone()); }