title: Repeating a function in C# until it no longer throws an exception
body: <p>I've got a class that calls a SOAP interface, and gets an array of data back.  However, if this request times out, it throws an exception.  This is good.  However, I want my program to attempt to make this call again.  If it times out, I'd like it to keep making this call until it succeeds.  How can I accomplish this?</p>
  
  <p>For example:</p>
  
  <pre><code>try
  {
     salesOrdersArray = MagServ.salesOrderList(sessID, filter);
  }
  catch
  {
     ?? What Goes Here to FORCE the above line of code to rerun until it succeeds.
  }
  </code></pre>