Hallo,
ich habe eine C#-Klasse, die mir eine Connection zur AS400 zur Versügung stellt. Wenn diese Verbindung abbricht und nach einer Zeit wieder hergestellt wird, dann kann die Verbindung nicht mehr aufgebaut werden.

So sieht mein Code aus:
Code:
    public static class AS400Connection    { 
       private static String connectionString = "";
       private static System.Data.OleDb.OleDbConnection conn;       
  public static OleDbConnection getConnection()      
  {         
   try     
       {      
          if (conn == null || conn.State != System.Data.ConnectionState.Open)
                {    
                getNewConnection();  
                  return conn;    
            }  
              else 
               {  
                  return conn; 
               } 
           }    
        catch (Exception)   
         {    
            return null; 
           }  
      }       
  public static void closeConnection() 
       { 
           if (conn != null && conn.State != System.Data.ConnectionState.Closed)
            {     
           conn.Close();   
         }   
     }     
    public static void getNewConnection()   
     {         
   conn = new System.Data.OleDb.OleDbConnection(connectionString);   
         try   
         {       
         conn.Open();   
         }     
       catch (Exception)    
        {         
       conn = null; 
           } 
       }   
 }
Wenn die Connection fehlschlägt wird das im catch abgefangen und versucht eine neue Verbindung aufzubauen. Egal wie, es funktioniert nicht. Ich bekomme keine neue Connection.

Hab ich da nen Denkfehler oder woran kanns liegen??

btw.: Im ConnectionString stehen natürlich die korrekten Connection-Infos

Danke Oli