Twoja metoda GetConnection wymaga trzech parametrów. Musisz przekazać je do metody.
UserMembers src = new UserMembers();
src.srDatabase =txtSrcUserDatabase.Text;
src.srID = txtSrcUserID.Text.ToUpper();
src.srPass = txtSrcUserPassword.Text;
OracleConnection conn1 = Connection.GetConnection(src.srDatabase, src.srID, src.srPass)
conn1.Open();
......
Lub możesz przekazać instancję UserMembers do metody GetConnection, tworząc przeciążenie GetConnection w ten sposób
class Connection
{
// the first overload that takes 3 string parameters
public static OracleConnection GetConnection(string dataSource, string userName, string password)
{
....
}
// The second overload that takes an instance of UserMembers
public static OracleConnection GetConnection(UserMembers src )
{
OracleConnection con = null;
if(!string.IsNullOrWhiteSpace(sr.srDatabase) && !string.IsNullOrWhiteSpace(sr.srID) && !string.IsNullOrWhiteSpace(sr.srPass))
{
con = new OracleConnection("Data Source=" + sr.srDatabase + ";User Id=" + sr.srID.ToUpper() + ";Password=" + sr.Pass + ";");
}
return con;
}
}
Na marginesie. Jeśli chcesz, aby element srID był zawsze pisany wielkimi literami, przenieś tę logikę do właściwości ustawiającej i możesz przestać martwić się o prawidłowe formatowanie tego elementu podczas próby jego odczytania
public string SID
{
get { return srID ; }
set { srID = value.ToUpper(); }
}