저장 프로 시저 (MSSQL)를 사용할 때 Dapper를위한 캐시 솔루션

asp.net-mvc-3 c#-4.0 dapper sql-server-2008

문제

Dapper를 사용하여 주로 MSSQL 2008 R2 데이터베이스의 저장 프로 시저 를 호출합니다. 데이터베이스 테이블에 매핑되는 클래스가 없습니다. 대부분의 데이터는 IEnumerable <Dynamic> 에서 끝나고 화면의 그리드로 전송됩니다.

사용할 수있는 데이터 버퍼링 솔루션을 사용할 준비가 되었습니까? (나는 그것을 MVC에서 사용해야한다).

데이터베이스의 데이터는 본질적으로 정적이고 동적입니다. 저장소 모델을 사용하여 데이터에 액세스합니다.

전문가 답변

Dapper는 내장 된 데이터 캐싱 기능을 포함하지 않습니다 (메타 프로그래밍 계층에 내부적으로 광범위한 캐싱을 사용 함). ADO.NET에서 정교하게 목표를 설정합니다. 그러나 거의 모든 상용 캐싱을 사용할 수 있습니다 HTTP 런타임 캐시 ( HttpContext.Current.Cache ) 또는 최신 ObjectCache 등의 구성 요소를 포함하는 구성 요소입니다. 이것들은 객체를 가져 가기 때문에 잘 동작합니다.

분산 캐시 (어쩌면 app-fabric, redis 또는 memcached를 사용하는 경우)를 사용하려면 데이터를 직렬화해야합니다. 이 시나리오에서는 dynamic API보다는 바인딩에 공식 POCO 유형을 사용하는 것이 좋습니다. 예를 들어 사내에서 우리는 직렬화를 위해 protobuf-net 마커로 주석을 달고 BookSleeve를 통해 redis에 저장되는 POCO를 채우기 위해 dapper를 사용합니다. 실제로는 그것보다 더 복잡한 소리입니다.



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.