如何在位图中加载具有相对路径的图像

时间:2011-10-14 21:16:42

标签: asp.net bitmap relative-path

我想从asp.net上传图像到位图对象,图像位于

/uploadedimages/sampleimage.jpg

每当我使用下面的代码在位图中加载图像时,我都会收到错误,说参数无效。

Bitmap b = new Bitmap("/uploadedimages/sampleimage.jpg") // this path is coming from database holded in variable

我试图将路径中的斜杠替换为“\”仍然不起作用。

任何人都可以告诉我可能是错误的原因和可能的解决方案。

3 个答案:

答案 0 :(得分:7)

使用Server.MapPath。使用波浪号~指定Web应用程序根目录是一种很好的做法。

Bitmap b = new Bitmap(Server.MapPath("~/uploadedimages/sampleimage.jpg"));

答案 1 :(得分:3)

如果uploadedimages目录位于App_Data文件夹中,则应将App_Data绝对路径附加到路径中:

Bitmap b = new Bitmap(Path.Combine(Server.MapPath("~/App_Data"), "/uploadedimages/sampleimage.jpg"));

答案 2 :(得分:2)

您可以使用server.MapPath,传递下面给出的Url字符串。

 Server.MapPath("../images/image.gif")