title: Throw exception from Called function to the Caller Function's Catch Block
body: <pre><code>internal static string ReadCSVFile(string filePath)
  {
      try
      {
          ...
          ...
      }
      catch(FileNotFoundException ex)
      {
          throw ex;
      }
      catch(Exception ex)
      {
          throw ex;
      }
      finally
      {
          ...
      }
  }
  
  
  //Reading File Contents
  
  public void ReadFile()
  {
      try
      {
          ...
          ReadCSVFile(filePath);
          ...
      }
      catch(FileNotFoundException ex)
      {
          ...
      }
      catch(Exception ex)
      {
          ...
      }
  }
  </code></pre>
  
  <p>Here in the above code sample, I have two functions <code>ReadFile</code> and <code>ReadCSVFile</code>.<br>
  In the <code>ReadCSVFile</code>, I get an exception of type FileNotFoundException, which gets caught in the catch(FileNotFoundException) block. But when I throw this exception to be caught in the catch(FileNotFoundException) of the <code>ReadFile</code> Function, it gets caught in the catch(Exception) block rather than catch(FileNotFoundException). Moreover,  while debugging, the value of the ex says as Object Not Initialized. How can I throw the exception from the called function to the caller function's catch block without losing the inner exception or atleast the exception message?</p>