title: Web API does not serialize bool return type as a json boolean value
body: <p>I have this ASP.NET Web API method :</p>
  
  <pre><code>[HttpGet]
  public bool IsCodeValid(string code)
  {
      return db.Usagers.Any(u =&gt; u.CodeAcces == code);
  }
  </code></pre>
  
  <p>I am calling this Web API method from Angularjs's $http.get method :</p>
  
  <pre><code>return $http.get("/lewis/production/clockin/iscodevalid?code=" + code);
  </code></pre>
  
  <p>This is the result :</p>
  
  <pre><code>[object Object]{config: Object {...}, data: "false", status: 200, statusText: "OK"}
  </code></pre>
  
  <p>Look at the <em>data</em> property, which is "false" (as a <strong>string</strong>).</p>
  
  <p>I would like it to be a <strong>raw boolean value</strong>, so, back into my javascript client code, I could do</p>
  
  <pre><code>if (result.data) {
    // do something if the result is true ...
  }
  </code></pre>
  
  <p>Because now, I have to do this ugly thing :</p>
  
  <pre><code>if (result.data == "true") {
  }
  </code></pre>
  
  <p>I get the result from my custom "userService" service :</p>
  
  <pre><code>userService.isCodeValid($scope.code).then(function (result)
  {
      console.log(result);
  });
  </code></pre>
  
  <p>And this is the code of the isCodeValid method in my userService :</p>
  
  <pre><code>angular.module('clockin').service('userService', ['$http',
      function ($http) {
          this.isCodeValid = function (code) {
              return $http.get("/lewis/production/clockin/iscodevalid?code=" + code);
          };
      }
  ]);
  </code></pre>
  
  <p>Any idea of what I am missing ?</p>