0

画像ファイルをロードするコントローラーがあります。

    //
    // GET: /MyController/Image/id
    public ActionResult Image(string id)
    {
        var dir = @"C:\Temp\Images";
        var path = Path.Combine(dir, id + ".png");
        return File(path, "image/png");
    }

アクションとは別のビューで、MyController/Page/id急いで html をハッシュして画像を表示しました。

<img src="../image/@Model.Name" />

そして、リンクもあります:

<a href="../image/@Model.Name">
  <img src="../image/@Model.Name" />
</a>

@Htmlそれは機能しますが、上記の2つについて、resharperがナビゲーションと検証に役立つように、より良い方法を探しています。私はこれを試しました:

@Html.RenderAction("Image", "MyController", new { id = Model.Name })

しかし、これはコンパイルされませんExpression must return a value to render

4

2 に答える 2

3

Url.Action()アクションに URL を返すを探しているだけだと思います。

<img src="@Url.Action("Image", "ImageController", new { id = Model.ImageID })" />
于 2013-11-01T13:59:48.257 に答える
3

Url.Action()src 属性で使用できます

 <img src='@Url.Action("Image", "ImageController", new { imageId = Model.Id })' alt='MyImage' />
于 2013-11-01T14:00:18.037 に答える