SqlDataReader을 사용하여 SQL Server에서 데이터를 읽습니다. 그러나 때로는 메모리에 읽기 전용 경량 연결이 필요없는 개체로 데이터를 캐시하고 싶습니다. 나는 BCL에서 나를 위해 어떤 옵션도 찾을 수 없었다. 그러한 컨테이너의 구현을 직접 작성해야합니까 아니면 사용할 수 있습니까?SqlDataReader에서 데이터를 저장하기위한 DataTable의 대신 읽기 쉬운 가벼운 읽기?
데이터베이스의 데이터를 간단한 형식으로 저장하기 위해 어떤 대안을 사용할 수 있습니까? 나를 위해 DataTable 전혀 후보가 아닙니다.
편집 : 내가 선택하고 어떤 데이터를 알게되면
, 내가 쉽게 List<T>
또는 무언가로 내 독자를 변환하는 LINQ를 사용할 수 있습니다. 하지만 대신 구조를 알지 못하는 데이터를 캐시 할 수 있기를 원합니다.
@Joe 경량화로 인해 메모리 사용량이 아니라 속도를 의미합니다. 초기 테스트 결과 DataTable은 LINQ Execute 메서드보다 느린 것으로 나타났습니다. List
DataTable 클래스와 Execute 메서드 간의 속도 차이에 대해 이야기 할 때 비교 대상에 대해 명확하지 않습니다. –
Joe
SqlDbReader 대 LINQ Translate에서 읽는 @Joe DataTable.Load 메서드는 SqlDbReader에서 읽고 형식화 된 열거 형으로 변환하는 메서드입니다. DataTable은 더 느리고 더 커집니다. –