2012-01-22 2 views
0

디스크 기반 캐시를 구현했으며이를 출력 제어로 사용할 수도 있습니다. 나는 디스크 기반의 출력 캐시 공급자를 usercontrols에 사용할 수는 없지만 전체 페이지를 outputcache에만 사용할 수 있다는 것을 읽었습니다.출력을 메모리가 아닌 다른 것으로 캐싱 출력

다른 방법으로 또는 다른 storagetype (db)에 사용자 정의 컨트롤을 디스크에 출력 할 수 있습니까?

감사 토마스

답변

0

ASP.Net 4.0 추가 출력 캐시 확장. 출력 캐시 제공자를 작성하여이를 수행하십시오. 스캇 구의 말에 의하면

출력 캐시 공급자는 출력 캐시 된 콘텐츠를 유지할 수 있습니다. 따라서 로컬 또는 원격 디스크, 데이터베이스, 클라우드 저장소 및 분산 캐시 엔진 (예 : memcached 또는 속도)을 포함한 모든 지속성 메커니즘을 사용하여 캐시 된 콘텐츠를 저장하는 출력 캐시 공급자를 쉽게 만들 수 있습니다.

당신은 OutputCacheProvider 기본 클래스를 서브 클래 싱하여 출력 캐시 공급자를 만들.

당신이 캐시 제공자를 만든 후에, 당신은 당신의 web.config 파일에 등록 할 수 있습니다

<%@ OutputCache Duration="120" VaryByParam="None" %> 

: 당신은 사용자 정의 컨트롤의 ASCX의 페이지에 OutputCache 지시문을 넣어

<caching> 
    <outputCache defaultProvider="MyCustomCacheProvider"> 
    <providers> 
     <add name="MyCustomCacheProvider" type="CustomCacheProvider" /> 
     </providers> 
    </outputCache> 
</caching> 

이 사용자 정의 캐시 공급자를 사용자 정의 컨트롤에 사용할 수 있어야합니다.

자세한 내용은 Scott Gu's excellent blog post을 참조하십시오.

관련 문제