Salve,
ho la seguente esigenza, ho in gestione il solito applicativo che si connette ad un db Oracle. IL DB è un 8I.
Il Listner dell'istanza è andato giù e contestualmente a questo evento il codice si blocca senza dare ne eccezioni ne altri cenni di gloria sulla Open della connection. La domanda è la seguente perchè non eleva un eccezione?
Per la connessione sto utilizzando lo spazio dei nome System.Data.OracleClient e l'oggetto è un istanza della classe OracleConnection.
Qui di seguito riporto parzialmente il codice della classe
public class DBHandler: IDisposable
{
private OracleConnection oConn;
private string StringConnection;
private OracleTransaction Trans;
#region Proprietà
public String StringaConnessione
{
get
{
return StringConnection;
}
set
{
StringConnection = value;
}
}
#endregion
#region Costruttori e Distruttori
public DBHandler()
{
oConn = new OracleConnection();
}
public DBHandler(String StringaConnessione)
{
StringConnection = StringaConnessione;
oConn = new OracleConnection();
oConn.ConnectionString = StringConnection;
}
public void Dispose()
{
if (oConn.State == ConnectionState.Open)
this.CloseConnection();
oConn.Dispose();
}
~DBHandler()
{
this.Dispose();
}
#endregion
#region Metodi
public void OpenConnection()
{
if (StringConnection == null)
{
throw new Exception("Stringa di Connessione Vuota");
}
oConn.Open();
}
public void OpenConnection (String StringaConnessione)
{
StringConnection = StringaConnessione;
oConn.ConnectionString = StringConnection;
OpenConnection();
}
Ecco anche il contenuto dell'app.config
Allora da quel poco che ho visto, anche se non ne sono sicuro, non esiste la possibilità via codice di impostare una connection timeout.
Allora come faccio a capire, via codice c#, se un db oracle è raggiungibile?
Grazie
Francesco