title: Using enums in WCF Data Services
body: <p>I'm trying to manually build a WCF Data Service using a POCO data model and I cannot figure out how to properly expose <code>enum</code> values. Assuming a simple model like:</p>
  
  <pre><code>public class Order
  {
     public int ID {get; set;}
     public string Description {get; set;}
     public OrderStatus Status {get; set;}
  }
  
  public enum OrderStatus
  {
     New,
     InProcess,
     Complete
  }
  </code></pre>
  
  <p><strong>How do you expose the valuable information in the <code>OrderStatus</code> property via the OData WCF Data Service?</strong> </p>
  
  <p>If you do nothing, the Data Service generates a runtime error (enum is invalid property). The only answer I've seen that at least resolves the error is to mark the <code>enum</code> property as Ignored, such as:</p>
  
  <pre><code>[System.Data.Services.IgnoreProperties("Status")]
  public class Order ...
  </code></pre>
  
  <p>This works, but it forces you to "omit" valuable information from the service layer. 
  Are there other options for working with enum values in WCF Data Services?</p>
  
  <p><strong>EDIT:</strong> Please  notice this is <strong>WCF Data Services</strong> (aka Astoria). This is not raw WCF Services, in which case the answers are more clear.</p>