Резюме для программиста
Вобщем, где-то была речь про Dynamic LINQ - зачем нужен и минус, что не типобезопасно. Тут они вкратце объяснили, зачем нужен. Кроме полностью динамических запросов, можно ещё создавать динамические классы данных - т.е. с разным числом, типами и названиями свойств. И вот это последнее очень помогает в ситуациях, когда юзер может выбирать, какие свойства таблицы показать, какие поля сохранить или экспортировать куда-нибудь. Как я сказал, некоторые либы - тот же Радзен фреймворк - свою функциональность полностью на этом основывают. Правда, для этого они в этом динамическом линке придумали свой язык запросов, но то мелочь.
Можно, конечно, и своё расширение написать по созданию типов динамически. Но раз за нас уже люди постарались, то почему бы не использовать готовую библиотеку?
Или ещё можно с анонимными типами что-то делать. Но у них вроде область видимости в пределах текущего блока, нет? И их всё равно надо приводить к какому-то конкретному типу потом.
И раз уж у нас даже всякие гуры непрочь иногда тайком подинамичить, поскриптизировать, балуясь с сериализацией в строки и шаля хранением всего в object, то жаловаться на Dynamic LINQ, что там что-то не строготипизированно - двуличие. Все мы под богом ходим. ))