如何让HomeController调用ImageController

本文关键字:调用 ImageController HomeController | 更新日期: 2023-09-27 18:24:34

首先,我是MVC的新手,所以我有一个学习曲线。

在asp mvc 中从数据库中读取以下post-Display图像后

我已经在_Layout.cshtml中包含了以下标记和剃刀,根据上面的帖子

<img src="@Url.Action("show", "image", new { imageName = Session["WebSite.LogoFileName"]})" />

共享视图_Layout.cshtml正在调用具有的HomeController

[AllowAnonymous]
public ActionResult Index()
{
    return View();
}

根据我在帖子中的理解,我在HomeController中也包含了以下内容。

[AllowAnonymous]
public ActionResult Show()
{
    return View();
}

图像控制器具有以下

// GET: /Image/
public ActionResult Show(string imageName)
{
    var imageData = ReadBytesFromDatabase(Session["WebSite.LogoFileName"].ToString());
    return File(imageData, "image/jpg");  //I have excluded the File method on purpose.
}

如何让HomeController调用ImageController

我想你把Url.Action搞错了Html.Action.

Url.Action创建指向操作的链接。因此,在这种情况下,它将生成类似于:

/Images/Show/ImageName.png

但你想要行动的结果。因此,将Url.Action更改为Html.Action就可以了。