2011-04-05 5 views
13

ASP.NET에서 서버 캐싱을 전역 적으로 사용하지 않도록 설정하는 방법이 있습니까? web.config 파일에 일종의 설정을 추가하는 것과 마찬가지로?전역 적으로 캐시 사용 안 함 .NET

이 이 당신의 모듈을 제거하여 전체 응용 프로그램에 대한 출력 캐싱 및 세션 상태를 해제 할 수 있습니다
+1

왜 처음부터 비활성화 하시겠습니까? '왜'라고 말하면 문제에 대한 더 나은 해결책이 될 수 있습니다. 왜냐하면 캐시 서버 자체가 문제라고 상상할 수 없기 때문입니다. 당신이 그것을 사용하지 않으면, 그것은 당신의 방식으로되지 않습니다. – pyrocumulus

+0

기본적으로이 웹 사이트에서 새 데이터베이스 콘텐츠를 추가해야합니다. 캐싱이 끝나기 전까지 사이트에 표시되지 않습니다. – user441365

+0

위의 문제는 캐싱 내에서 outputCache 섹션이 최상위 레벨로 사용되지 않습니다. – Darren

답변

0

는, 이것이에서 수행 할 수

 <caching> 
      <sqlCacheDependency enabled="false"></sqlCacheDependency> 
      <outputCache enableOutputCache="false" 
       enableFragmentCache="false" 
       sendCacheControlHeader="false" 
       omitVaryStar="false" /> 
     </caching> 
...

지금까지 나는이 추가 시도하고 그 차이를 만들 didnt는

<httpModules> 
    <add name="OutputCache" type="System.Web.Caching.OutputCacheModule" /> 
    <add name="Session" type="System.Web.SessionState.SessionStateModule" /> 
</httpModules> 

또는

는 페이지 로딩이 추가 Web.config의

Response.Cache.SetCacheability(HttpCacheability.NoCache) 
+1

web.config에 해당 모듈이 없습니다. 그리고 Response.Cache.SetCacheability (HttpCacheability.NoCache)를 global.asax에 추가하지 말아야합니다. – user441365

+0

@ user441365 - Response.Cache.SetCacheability (HttpCacheability.NoCache)는 global.asax에없는 페이지 수준에서 추가해야합니다. –

-1

According to MSDN는 :

당신은 당신의 Web.config 파일에 OutputCacheSection에 enableOutputCache는 = "false"를 추가하여 전체 응용 프로그램 페이지 출력 캐싱을 사용하지 않도록 설정할 수 있습니다.

당신이이 outputCacheSettings 요소에 있어야 outputCache 요소에 enableOutputCache 속성을 가지고 있기 때문에

<configuration> 
    <system.web> 
     <caching> 
      <outputCacheSettings enableOutputCache="false"/> 
     </caching> 
    </system.web> 
</configuration> 

그래서 구성이 작동하지 않습니다.

+0

'NET 3.5 및 VS2008에서 작업 중이며 그다지 좋지 않습니다. ... – user441365

+0

그것은 내게 메시지를줍니다. 속성 enableOutputCache가 선언되지 않았습니다. – user441365

+0

아, 3.5 ok. 네, 그렇습니다. outputCache에서 3.5와 4 사이의 outputCacheSettings로 마이그레이션 한 것 같습니다. web.config 스키마는 끔찍한 엉망입니다! 이 경우 원본이 효과가 있어야합니다.하나의 가능성 - 어떤 웹 서버를 사용하고 있습니까? (devs? IIS? 버전은 무엇입니까?) – UpTheCreek

10

또한 IIS7/7.5 또는 IIS Express를 사용하는 경우 system.webServer에서이 기능을 비활성화하는 방법이 있습니다. 이것은 기본 web.config 파일 (webforms 및 mvc)과 하위 폴더의 web.config 파일에서 작동하여 응용 프로그램의 특정 영역에 대해 비활성화합니다.

<system.webServer> 
    <caching enabled="false" /> 
</system.webServer> 
3

OutputCacheSection 섹션은 페이지 출력 캐싱의 사용 가능 여부와 같은 응용 프로그램 범위 설정을 구성하는 데 사용됩니다. 예를 들어 Web.config 파일의 OutputCacheSection에 enableOutputCache="false"을 추가하여 전체 응용 프로그램의 페이지 출력 캐싱을 사용하지 않도록 설정할 수 있습니다. 구성 파일의 설정은 개별 페이지의 캐시 설정보다 우선하므로 설정 예제는 출력 캐시가 사용되지 않음을 의미합니다.

<system.web> 
     <caching> 
      <outputCache enableOutputCache="false"/>    
     </caching> 
</system.web>