It depends on what you do. I am going to guess that most of the time the Controller does not need to be entered in any of them, but if necessary, it will most likely be needed in the ViewModel. Let me explain.
What are you doing with the controller? You have to do something .. If this “something” is exclusively related to “the way the data looks”, then it belongs to the view. If this is due to "what is shown to the user", then it belongs to the ViewModel.
I inject a controller into one of my ViewModels. My ViewModel represents the data that is then displayed in the view. I have a command that moves a data item from the current graph to a new graph. Since this changes “what is displayed in the chart window”, I ran a command in my ViewModel. The ViewModel removes the data item from its own set of elements, and then uses the controller to request the creation of a new view for this new data (it already had this functionality).
Looking at the article, I do not see the arrow between the controller and the view 
Alan
source share