In many of these discussions (not including the posts I referred to) it seems like one aspect of ViewModel get???s lost, which is ???Why use it in the first place???? This leads to a lot of debate around details of implementation including one item in particular which is whether or not code in the code-behind is an anti-pattern.