Здравствуйте, Sinclair, Вы писали:
S>Здравствуйте, gandjustas, Вы писали: G>>Усложняет все IQueryable<T>, так как это универсальный тип и вызов Select невозможно обработать не зная что там внутри IQueryable лежит. S>Эмм, так ведь вроде же query comprehension к IQueryable никаким боком? S>Можно запросто делать совершенно рукопашный тип, с рукопашным Select. Или ты что сейчас имеешь в виду?
Это не поможет. Чтобы обработать select нужно знать к чему он применяется. Если запрос, к которому применяется select заранее неизвестен (может быть разный), то и в compile-time обработать не получится. То есть с точки зрения быстродействия свой тип ничего не даст.
Единственное на что можно надеяться, что мс начнет применять более легковесный api вместо рефлексии. Или саму рефлексию сделает быстрой. Большую часть времени работы приложения в обработке linq отнимает именно она и не оптимизируется.