Because your view uses the model to build its content.
If you had a model like this:
public class Order
{
public decimal Total { get; set; }
}
And your controller:
public ActionResult GetOrderInformation(int orderID)
{
var order = LoadOrder(orderID);
return View(order);
}
With this view:
@model Order
<html>
<head> </head>
<body>
Your order costs @Model.Total
</body>
</html>
You can see how the view is completely independent from the controller, or how the information is retrieved - which is the whole idea behind MVC. The view only knows about the model, and how to display the model - nothing else.
The controller knows who to ask for the data, but not how to display it