I\'m curious of all of the various ways people are building their ViewModels and why they choose that method.
I can think of several ways here:
-1. Injected repo
I use a service layer that hides the domain model from the controller returning ViewModels from the service methods. This allows me to make changes to the domain model without impacting the client.