title: Validate an Object in ASP.NET MVC without passing it into an Action
body: <p>In ASP.NET MVC you can validate the model passed to an Action with <code>ModelState.IsValid()</code>.</p>
  
  <p>I'd like to validate arbitrary objects rather than the one Model passed in. How can I do that, using the framework's libraries?</p>
  
  <pre><code>public ActionResult IsValidSoFar()
  {
      // Get a user's autosaved data
      var json = await ...
      HomeModel model = JsonConvert.Deserialize&lt;HomeModel&gt;(json);
  
      // Validate the model &lt;---- How?        
  }
  
  public class HomeModel
  {
      [Required, MaxLength(100)]
      public string Name { get; set; }
  }
  </code></pre>