Posso passare un tipo anonimo alla mia vista ASP.NET MVC?

Ho appena iniziato a lavorare con ASP.NET MVC ora che è in versione beta. Nel mio codice, eseguo una semplice query LINQ su SQL per ottenere un elenco di risultati e passarlo alla mia vista. Questo genere di cose:

var ords = from o in db.Orders where o.OrderDate == DateTime.Today select o; return View(ords); 

Tuttavia, a mio avviso, mi sono reso conto che avrei dovuto accedere al nome del cliente per ciascun ordine. Ho iniziato a utilizzare o.Customer.Name ma sono abbastanza certo che si stia eseguendo una query separata per ogni ordine (a causa del lazy loading di LINQ).

Il modo più logico per ridurre il numero di query sarebbe quello di selezionare il nome del cliente nello stesso momento. Qualcosa di simile a:

 var ords = from o in db.Orders from c in db.Customers where o.OrderDate == DateTime.Today and o.CustomerID == c.CustomerID select new { o.OrderID, /* ... */, c.CustomerName }; return View(ords); 

Tranne ora la mia variabile “ords” è un IEnumerable di tipo anonimo.

È ansible dichiarare una vista MVC ASP.NET in modo tale che accetti un object IEnumerable come dati di visualizzazione in cui T è definito da ciò che viene passato dal controller, o dovrò definire un tipo concreto da compilare dalla mia query ?