/// <summary> /// open a connection to an RDBMS /// </summary> /// <param name="ADataBaseType"></param> /// <param name="ADsn"></param> /// <param name="ADBPort"></param> /// <param name="ADatabaseName"></param> /// <param name="AUsername"></param> /// <param name="APassword"></param> /// <param name="AConnectionString"></param> /// <param name="APetraUserName"></param> public new void EstablishDBConnection(TDBType ADataBaseType, String ADsn, String ADBPort, String ADatabaseName, String AUsername, String APassword, String AConnectionString, String APetraUserName) { // A Method of the same name and Method signature in the Base Class has got an optional string Argument // 'AConnectionName' in exactly the same Argument position than APetraUserName has got here. The Base Class // supplies 'null' as a Default for this Argument. For these reasons the Method *here* *could* get legally called // with 'APetraUserName' *omitted* and 'null' would be supplied in lieu in that case. As this would not make // sense here we throw an ArgumentNullException in that case. if (APetraUserName == null) { throw new ArgumentNullException("APetraUserName"); } UserID = APetraUserName; FCache.Invalidate(); // Call base Method with same name and same Method signature but different functionality! base.EstablishDBConnection(ADataBaseType, ADsn, ADBPort, ADatabaseName, AUsername, APassword, AConnectionString, "Client's Default DB Connection"); }
/// <summary> /// open a connection to an RDBMS /// </summary> /// <param name="ADataBaseType"></param> /// <param name="ADsn"></param> /// <param name="ADBPort"></param> /// <param name="ADatabaseName"></param> /// <param name="AUsername"></param> /// <param name="APassword"></param> /// <param name="AConnectionString"></param> /// <param name="APetraUserName"></param> public void EstablishDBConnection(TDBType ADataBaseType, String ADsn, String ADBPort, String ADatabaseName, String AUsername, String APassword, String AConnectionString, String APetraUserName) { UserID = APetraUserName; FCache.Invalidate(); // inherited EstablishDBConnection(ADataBaseType, ADsn, ADBPort, ADatabaseName, AUsername, APassword, AConnectionString); }