title: Not allowing Guid.Empty
body: <p>I have a lot of <code>Guid</code> properties in my classes and I want to make sure that a <code>Guid.Empty</code> will make <code>ModelState</code> <strong>invalid</strong>. What's the best way of handling this?</p>
  
  <p>Say, I have the following class that a user submits to my API action method:</p>
  
  <pre><code>{
     public Guid Id { get; set: }
  
     [Required]
     public string name { get; set: }
  }
  </code></pre>
  
  <p>By using <code>[Required]</code>, I make sure that the user must always give me something in the name field but if the user doesn't provide an <code>Id</code>, it becomes <code>Guid.Empty</code> and <code>ModelState</code> is still valid.</p>
  
  <p>I want to make sure that I will always get a <code>Guid</code> value in the <code>Id</code> property and NOT a <code>Guid.Empty</code>.</p>