我将图像文件放在一台服务器上,将应用程序放在另一台服务器上。
我想访问该图像,下面是我编写的代码:
在 default.aspx 上,我有
<asp:Image ID="Image1" runat="server" ImageUrl= "GetImage.aspx?imgName=MyImage.jpg" />
在 GetImage.aspx 上,我在 page_load 上编写了以下代码
protected void Page_Load(object sender, EventArgs e)
{
// Changing the page's content type to indicate the page is returning an image
Response.ContentType = "image/jpg";
var imageName = Request.QueryString["imgName"];
var path = "//SERVER/FOLDER/" + imageName;
if ((string.IsNullOrEmpty(imageName) == false))
{
// Retrieving the image
System.Drawing.Image fullSizeImg;
fullSizeImg = System.Drawing.Image.FromFile(Server.MapPath(path));
// Writing the image directly to the output stream
fullSizeImg.Save(Response.OutputStream, ImageFormat.Jpeg);
// Cleaning up the image
fullSizeImg.Dispose();
}
}
但我在
fullSizeImg = System.Drawing.Image.FromFile(Server.MapPath(path));
请让我知道我在哪里不正确。除了 Server.MapPath 之外,我还需要其他任何东西吗?因为我的图像在其他服务器上。
编辑
- 我的电脑里有图片文件夹
- 我在其他计算机 [相同网络] 中创建了一个 Web 应用程序,部署在 IIS 中,图像显示正确。使用 http://10.67.XX.XX/websiteName/Default.aspx之类的路径
- 但是当我尝试从我的计算机或任何其他计算机访问相同的内容时,我无法看到图像。