[ADO.Net][C#] Pourquoi OracleConnection lève une exception ?
Environnement: VS .NET 2003 En
Framework: 1.1 (SP ? comment le savoir ?)
OS: Win XP SP1
Bonjour,
J'appelle cette methode sur l'evenement SelectedIndexChange d'une dropdownlist.
Le probleme, c'est que j'ai parfois une erreur : System.NullReferenceException: Object reference not set to an instance of an object
au niveau du oraConn.Open(). Cette erreur survient de maniere aleatoire et/ou apres une periode d'inactivité du client.
Il semble evident que le code est bon... Pensez vous que le client Oracle puisse etre en cause ? La gestion du pool de connection ? ou autre ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
private ICollection CreateNewMarkingSource(string str)
{
// Appel de la procedure ...
string conn_string = ConfigurationSettings.AppSettings["xxx"];
System.Data.OracleClient.OracleConnection oraConn = new System.Data.OracleClient.OracleConnection(conn_string);
oraConn.Open();
System.Data.OracleClient.OracleCommand cmdMkg = new System.Data.OracleClient.OracleCommand();
cmdMkg.CommandText = ConfigurationSettings.AppSettings["Procedure.xxxxxxx"];
cmdMkg.CommandType = CommandType.StoredProcedure;
cmdMkg.Connection = oraConn;
System.Data.OracleClient.OracleParameter p1Mkg = new System.Data.OracleClient.OracleParameter("xxxx",System.Data.OracleClient.OracleType.Number,11);
System.Data.OracleClient.OracleParameter p2Mkg = new System.Data.OracleClient.OracleParameter("xxx",System.Data.OracleClient.OracleType.Cursor);
p1Mkg.Direction = ParameterDirection.Input;
p2Mkg.Direction = ParameterDirection.Output;
p1Mkg.Value = Convert.ToInt32(str);
cmdMkg.Parameters.Add(p1Mkg);
cmdMkg.Parameters.Add(p2Mkg);
System.Data.OracleClient.OracleDataReader drMkg = cmdMkg.ExecuteReader();
DataTable dt = new DataTable();
while(drMkg.Read())
{
// ....
}
drMkg.Close();
if(oraConn.State != ConnectionState.Closed)
{ oraConn.Close();}
DataView dv = new DataView(dt);
return dv;
} |
Dans mon web.config :
Code:
<add key="xxx" value="user id=xxxxxxx;data source=xxx;password=xxxxxxxx" />
La plupart du temps ca se passe bien ... mais parfois cette erreur survient .
Je n'ai pas pu trouver de règle à ce sujet :?