3

何が原因なのかはわかりませんが、私たちのコントローラー アクションはその出力をキャッシュしていましたが、もはやキャッシュしていません。

[HttpGet]
[OutputCache(VaryByParam = "slug", Duration = 3600)]
public ContentResult Index(string slug)
{
    // each call to the page returns a new tick value
    var viewData = DateTime.Now.Ticks.ToString();
    return View(viewData);
}

以前は、ページをデバッグし、Index メソッド内にブレーク ポイントを配置すると、ページへの最初の呼び出しでブレークポイントがトリガーされ、その後の呼び出しではトリガーされませんでした。これで、ページを呼び出すたびにブレーク ポイントがトリガーされます。

サイトを実行している (デバッグしていない) 場合でも、アクションで SQL 呼び出しをトレースできます。これは、最初の呼び出しの後に呼び出されるべきではありません。

いつ機能しなくなったのかはわかりませんが、最近 .Net 4.0 と MVC 3 にアップグレードしました。

本当にありがとう。

編集

ページ応答のヘッダーは次のとおりです。

Cache-Control   public, no-cache="Set-Cookie", max-age=1296000
Content-Encoding    gzip
Content-Length  5414
Content-Type    text/html; charset=utf-8
Date    Wed, 18 Sep 2013 00:33:23 GMT
Expires Thu, 03 Oct 2013 00:33:20 GMT
Last-Modified   Wed, 18 Sep 2013 00:33:20 GMT
Server  Microsoft-IIS/7.5
Set-Cookie  tag=tech; expires=Thu, 19-Sep-2013 00:33:23 GMT; path=/
Vary    *
X-AspNet-Version    4.0.30319
X-AspNetMvc-Version 3.0
X-Powered-By    ASP.NET
4

1 に答える 1