title: Generic View Models?
body: <p>I am wondering is it good practice to try to make a view that takes in a generic view model?</p>
  
  <p>I am wondering this because someone mentioned that he was anticipating to have to do lots of duplicate code unless he started to make a generic view and generic view model.</p>
  
  <p>So basically the views would be like just a set of controls. One view might have 2 controls(say a text-box and radio button) another view might have 50 controls on it.</p>
  
  <p>They will all have the same look and feel(it just grows by number of controls) . Basically he was thinking having a view model takes in the object(domain object) looks at it and see's 50 fields and renders the right control types.</p>
  
  <p>I guess a edit template could be used to figure out the controls however I am just not sold on a generic view model.</p>
  
  <p>I like generics and they can do very powerful things and in some situations they are good but I am just not overall to crazy about them and try to not use.</p>
  
  <p>I find most of the time it may reduce duplicate code but sometimes it makes the code alot more complicated. Of course this could just because I am still a relatively new to programming and it could be still above my skill level.</p>
  
  <p>The next problem I have with it is I think that view models should be as flat as possible and only expose data that is actually going to be used so people don't start using properties that should never been in the view in the first place.</p>
  
  <p>The next problem I have with it that it could just keep going if you have some complex object that has objects in it that has objects in it. It could go for a long long time.</p>