Я использую SqlDataReader для чтения данных с SQL Server. Однако иногда я хочу кэшировать свои данные в памяти как доступный для чтения легкий без подключения объект. Я не мог найти никаких вариантов для меня в BCL. Нужно ли мне писать собственную реализацию такого контейнера или какие-либо доступные?Легкая альтернатива DataTable для хранения данных из SqlDataReader?
Какие альтернативы у меня есть для хранения данных из базы данных в облегченной форме? Для меня DataTable не является кандидатом вообще.
EDIT:
Когда я знаю, какие данные я выбор, я могу легко использовать LINQ для преобразования моего читателя в List<T>
или что-то. Но вместо этого я хотел бы иметь возможность кэшировать данные, которые я не знаю о структуре.
@Joe В легком я имею в виду не только использование памяти, но и скорость. Первоначальное тестирование показало, что DataTable работает медленнее, чем метод LINQ Execute. О списке
Я очень не понимаю, что вы сравниваете, когда говорите о различиях в скорости между классом DataTable и методом Execute. –
Joe
@Joe DataTable.Load метод, который считывает из SqlDbReader vs LINQ Translate метод, который считывает из SqlDbReader и преобразует его в типизированный перечислимый. DataTable работает медленнее и больше. –