【问题标题】:Response image src in asp.net mvcasp.net mvc中的响应图像src
【发布时间】:2014-06-14 23:18:53
【问题描述】:

我返回 HTML 内容并在 ASP.NET MVC 的 excel 文件中显示。

我的问题是关于 img 源。Img 源不起作用。

我的代码:

public ActionResult ExportData()
{
    Response.ContentType = "application/vnd.ms-excel";
    Response.AddHeader("Content-Disposition", "attachment; filename=test.xls;");
    var stringWrite = new StringWriter();
    var htmlWrite = new HtmlTextWriter(stringWrite);

    var headerTable = @"<Table><tr><td><img src=""‪C:\Users\xx\Desktop\Export\Export\Images\orderedList0.png"" \></td></tr></Table>";

    Response.Write(headerTable);
    Response.Write(stringWrite.ToString());
    Response.End();

    return RedirectToAction("StudentDetails");
}

以上代码导出excell文件没有问题。我只有显示图像的问题。图像无法准确显示。 img源有问题。

对于我的代码,img src 的正确方法是什么?

【问题讨论】:

  • 始终尽可能使用相对 url,因为这样可以省去部署时换行的麻烦。使用 Fiddler 之类的工具来检查正确的 url。

标签: c# asp.net-mvc image excel


【解决方案1】:

请记住,您嵌入到 Excel 中的图像的路径是绝对路径,必须存在于客户端计算机上的该确切路径。

我假设您在工作簿中获得了图像占位符?如果是这样,那就是路径问题。您必须确保该路径正确指向存在于该确切机器上该确切路径的文件。

一个更好的主意是按照 Ash 的建议将 src 标记更改为相对的,并从您的网络服务器托管图像

var headerTable = @"<Table><tr><td><img src=""fullyqualifiedurltoimagefileonserver.png"" \></td></tr></Table>";

如果您 100% 确定图像路径,您可能面临 Excel 安全限制。

【讨论】:

    猜你喜欢
    • 2015-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    • 2016-04-21
    • 2012-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多