title: Return content with IHttpActionResult for non-OK response
body: <p>For returning from a Web API 2 controller, I can return content with the response if the response is OK (status 200) like this:</p>
  <pre class="lang-cs prettyprint-override"><code>public IHttpActionResult Get()
  {
      string myResult = ...
      return Ok(myResult);
  }
  </code></pre>
  <p>If possible, I want to use the built-in result types here when <a href="https://msdn.microsoft.com/en-us/library/system.web.http.results(v=vs.118).aspx" rel="nofollow noreferrer">possible </a></p>
  <p>My question is, for another type of response (not 200), how can I return a message (string) with it? For example, I can do this:</p>
  <pre class="lang-cs prettyprint-override"><code>public IHttpActionResult Get()
  {
      return InternalServerError();
  }
  </code></pre>
  <p>but not this:</p>
  <pre class="lang-cs prettyprint-override"><code>public IHttpActionResult Get()
  {
      return InternalServerError(&quot;Message describing the error here&quot;);
  }
  </code></pre>
  <p>Ideally, I want this to be generalized so that I can send a message back with any of the implementations of IHttpActionResult.</p>
  <p>Do I need to do this (and build my response message):</p>
  <pre class="lang-cs prettyprint-override"><code>public IHttpActionResult Get()
  {
      HttpResponseMessage responseMessage = ...;
      return ResponseMessage(responseMessage);
  }
  </code></pre>
  <p>or is there a better way?</p>