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

Abb*_*bas 6 asp.net bitmap relative-path

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

/uploadedimages/sampleimage.jpg
Run Code Online (Sandbox Code Playgroud)

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

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

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

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

Ole*_*hko 7

使用Server.MapPath.使用tilde char ~指定Web应用程序根目录是一种很好的做法.

Bitmap b = new Bitmap(Server.MapPath("~/uploadedimages/sampleimage.jpg"));
Run Code Online (Sandbox Code Playgroud)


far*_*jad 3

如果uploadedimages目录在您的App_Data文件夹中,那么您应该将App_Data绝对路径附加到您的路径中:

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