I\'d like to be able to map a domain model to a view model by newing up a view model and passing in the contributing domain model as a parameter (like the code below). My motiva
Your friend is right. Views should be dumb and not know anything about your domain model.
Have you tried using Automapper to map your business/domain entities/models to your dto/viewmodels?
More details because of comment:
Putting mapping code in your viewmodels violates the separation of concern, the SOLID single responsibility principal, the MVC pattern, and domain driven design principals. Views have one responsibility, get data to the screen, thats it. IMHO there isn't much to argue about. Its simply a bad idea that violates a lot of core software development principals.