6

MVC 4 で Web サイトを作成しています。プロジェクトの要件のために、画像はデータベースに保存されます。ストーリーに付随する写真のIDを持つモデルをバインドするビューがあり、画像を取得します:

意見:

<img src='<%= Url.Action("ShowImagen", "Home", new {id = item.IdImagen}) %>' style="width: 300px;
                        height: 200px;" />

コントローラ:

public FileResult ShowImagen(int id)
    {
        if (id > 0)
        {
            var imageData = new NoticiaRepository().GetImagen(id);
            return File(imageData, "image/jpg");
        }
        else
        {
            return null;
        }           
    }

これをChromeで確認すると、ページをリロードすると、.cssなどの他のファイルやファイルシステムから読み込まれた他の画像のように、キャッシュから画像が読み込まれないことに気付きました。

これらの画像をキャッシュする方法はありますか? 挨拶と感謝。

4

2 に答える 2

15

次の属性ShowImagenを使用して、コントローラーアクションを装飾できます。[OutputCache]

[OutputCache(Duration = 3600, Location = OutputCacheLocation.Client, VaryByParam = "id")]
public ActionResult ShowImagen(int id)
{
    ...
}
于 2013-03-05T15:17:42.243 に答える
0

アクションメソッドをOutputCache属性で装飾してみましたか?

于 2013-03-05T15:17:46.433 に答える