OutputCache에 대해 이해할 수 없습니다. 여기 CacheProfile을 사용하는 ASP.NET MVC4 OutputCache
내가이 경우 현재 시간[OutputCache(Duration = 3600, VaryByParam = "none", Location = System.Web.UI.OutputCacheLocation.Server)]
public string hour()
{
return DateTime.Now.ToString("T");
}
를 반환하는 간단한 작업이 내 테스트
, 그것은 완벽하게 작동합니다.은 지금은 여기에
[OutputCache(CacheProfile = "Cache1Hour")]
public string hour()
{
return DateTime.Now.ToString("T");
}
업데이트 작업이 여기에 Web.config의 캐싱 섹션
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name="Cache1Hour" duration="3600" varyByParam="none" location="Server"/>
</outputCacheProfiles>
</outputCacheSettings>
</caching>
입니다하지만 테스트 할 때 작동하지 않습니다 cacheProfile 를 사용하고 싶습니다. /MyController/hour? id = 1 및/MyController/hour? id = 2를 호출하면 varyByParam = "none"으로 설정했지만 두 가지 결과가 나타납니다.
그리고 마지막으로, 나는 다른 테스트
[OutputCache(CacheProfile = "Cache1Hour", VaryByParam ="none")]
public string hour()
{
return DateTime.Now.ToString("T");
}
을했다 그리고이 경우에 완벽하게 작동합니다.
어떤 의미입니까? 내 VaryByParm 속성이 web.config 파일에서 사용되지 않는 이유는 무엇입니까? 누군가 나를 설명 할 수 있습니까?
감사
업데이트 1 : 여기 는 지속 시간이 60 (= 일분)로 설정되어 당신의 Web.config의 이미지에서 내 Web.config의 web.config
자세한 내용을 보려면 어쩌면 섹션이 잘못된 위치에 있습니까? –
난 그냥 내 web.config 파일의 printscreen을 추가하십시오 –
얼마나 빨리 테스트하고 있는지 모르지만 이미지에 지속 시간이 60 (= 1 분)으로 설정되어 있습니다 –