title: How to query OData while using alternate property names
body: <p>I am using Newtonsoft to change property names on the web api json output.</p>
  <pre><code>public class User : IEntity
  {
      [Newtonsoft.Json.JsonProperty(PropertyName = &quot;user_name&quot;]
      public string Username { get; set; }
  }
  </code></pre>
  <p>I've enabled odata query so that i can add queries to the request.</p>
  <pre><code>[HttpGet]
  [Route(&quot;api/users&quot;)]
  [EnableQuery]
  public IQueryable&lt;User&gt; GetUser()
  {
      return dbContext.DbSet&lt;User&gt;();
  }
  </code></pre>
  <p>When i make a query using the alternate property name, it fails.</p>
  <blockquote>
  <p>GET /api/users?$select=user_name</p>
  <p>The query specified in the URI is not valid. Could not find a property named 'user_name'</p>
  </blockquote>
  <p>The query works fine if I use the entity model name, <code>Username</code> (which is not visible to public). How can i fix this while still using Newtonsoft to handle deserialization?</p>