Я бы хотел реализовать MVC при использовании LINQ (в частности, LINQ-to-entity). Я бы сделал так, чтобы контроллер генерировал (или вызывал что-то, что генерирует) набор результатов с помощью LINQ, а затем возвращал его в представление для отображения данных. Проблема, если я сделаю:
return (from o in myTable select o);
Все столбцы считываются из базы данных, даже те (потенциально десятки), которые мне не нужны. И - что более важно - я не могу сделать что-то вроде этого:
return (from o in myTable select new { o.column });
потому что нет способа сделать анонимные типы безопасными для типов! Я точно знаю, что нет хорошего, чистого способа сделать это в 3.5 ( это не чисто ...), а как насчет 4.0? Есть ли что-то запланированное или даже предложенное? Без чего-то вроде duck-typing-for-LINQ или безопасных для типов анонимных возвращаемых значений (мне кажется, компилятор должен быть способен на это), кажется, что невозможно чисто отделить контроллер от вида.