ASP.net Server.Transfer问题+图像没有得到

时间:2010-02-24 10:40:19

标签: asp.net

斐伊川,

当我使用Server.Transfer转移页面时,我无法获取图像

我在Page1.aspx文件夹中有一个页面folder1。在folder1中有另一个文件夹subfolder1,在subfolder1内有一页Page2.aspx }。图像保存在images中名为folder1的文件夹中。最初,我已将页面从Page1.aspx转移到已成功完成的Page2.aspx。但是,当我尝试从Page2.aspx转移到Page1.aspx时,图片无法加载。有没有办法使用Server.Transfer语句

正确加载图像

2 个答案:

答案 0 :(得分:2)

我不相信问题出在Server.Transfer。相反,确保所有图像(我假设您正在使用带有Image相关控件的WebForms)通过~/路径前缀加载:

<asp:Image ... ImageUrl="~/folder1/images/image.jpg" />

答案 1 :(得分:0)

您如何申请页面上的图片?

你是这样做的吗?

<img src="images/someimage.png" alt="" />

当您执行Server.Transfer时,您告诉服务器将从您正在传输处理的页面生成的HTML返回到,但仅保留客户端网址

这意味着您正在做的是从/folder1/page1.aspx返回HTML,但浏览器认为它仍在/folder1/subfolder1/page2.aspx,因此如果您的图像请求如上,则浏览器正在查找文件夹在子文件夹下调用图像。

你应该:

  1. 将您的图片请求更改为src="/folder1/images/someimage.png",您明确告诉浏览器返回网站的根目录并从那里开始。
  2. 不使用服务器传输,而是使用Response.Redirect或类似工具。