title: Compensating for the lack of 'out' parameters in async methods.
body: <p>I have a class that handles all API transactions in the application I'm working on. The general outline for its methods look like this:</p>
  
  <pre><code>public static async Task&lt;bool&gt; APICall(int bla)
          {
              HttpResponseMessage response;
              bool res;
  
              // Post/GetAsync to server depending on call + other logic
              return res;
          }
  </code></pre>
  
  <p>What I want to do is to be able to also return the response.StatusCode to the caller, but since we are not allowed to use 'out' parameters with async methods it complicates things a bit.</p>
  
  <p>I was thinking about returning a tuple containing both the bool and the response code, is there a better way to do this?</p>