Ich verwende die OracleClient
Bibliothek Version 1.0.5000.0 und ich bin verwirrt über die OracleParameter
Klasse und ihre Implementierung von ICloneable
. Warum implementiert OracleParameter ICloneable, aber Clone() nicht?
Dies ist die Definition der OracleParameter
Klasse:
public sealed class OracleParameter : MarshalByRefObject, IDbDataParameter, IDataParameter, ICloneable {
public OracleParameter();
public OracleParameter(string name, object value);
public OracleParameter(string name, OracleType oracleType);
public OracleParameter(string name, OracleType oracleType, int size);
public OracleParameter(string name, OracleType oracleType, int size, string srcColumn);
public OracleParameter(string name, OracleType oracleType, int size, ParameterDirection direction, bool isNullable, byte precision, byte scale, string srcColumn, DataRowVersion srcVersion, object value);
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
[RefreshProperties(RefreshProperties.All)]
[Browsable(false)]
public DbType DbType { get; set; }
[RefreshProperties(RefreshProperties.All)]
public ParameterDirection Direction { get; set; }
[Browsable(false)]
[DesignOnly(true)]
[EditorBrowsable(EditorBrowsableState.Never)]
[DefaultValue(false)]
public bool IsNullable { get; set; }
[DefaultValue(0)]
[Browsable(false)]
public int Offset { get; set; }
[RefreshProperties(RefreshProperties.All)]
public OracleType OracleType { get; set; }
[DefaultValue("")]
public string ParameterName { get; set; }
[DefaultValue(0)]
public byte Precision { get; set; }
[DefaultValue(0)]
public byte Scale { get; set; }
[DefaultValue(0)]
public int Size { get; set; }
[DefaultValue("")]
public string SourceColumn { get; set; }
public DataRowVersion SourceVersion { get; set; }
[DefaultValue("")]
[RefreshProperties(RefreshProperties.All)]
[TypeConverter(typeof(StringConverter))]
public object Value { get; set; }
public override string ToString();
}
Es implementiert System.ICloneable
, aber es gibt keine Clone()
Methode drin.
Kann jemand das erklären?
Sind Sie sicher, dass das die gesamte Klasse ist? Woher hast du den Code? Reflektor? Bist du sicher, dass du alles siehst? – BFree
Visual Studio 2008 F12 - so aus Metadaten. Hmmm ... Reflektor zeigt Objekt ICloneable.Clone() das ist interessant ... –