title: ASP.NET - Single Solution, MVC and WebApi projects, Separate Models for Each?
body: <p>We've got a solution with multiple MVC web projects and now adding a client-facing WebApi project.  </p>
  
  <p>The API will be a much more scaled-down version of what is available through any of the web projects (though it will likely expand much more over time), so we've come to a decision-making point for how to handle the Models.</p>
  
  <p><strong>What are the best practices for handling Models across different projects?</strong>  </p>
  
  <p>It's my understanding that a Model in a WebApi project will, for example, use certain property attributes which are meaningless to an MVC web application.  And also as an example, the Display attribute is meaningless to the WebApi, but very useful in a View.</p>
  
  <p>This leads me to believe I should be creating a separate set of Models for the WebApi, but also wondering if I'm missing something.</p>
  
  <p>I understand that this could be a question that may lead to a range of opinions, so I'm mostly looking for what are considered industry best practices.</p>