从数据库中收集路径并在ASP.NET C#中使用<img/>标记显示图像

时间:2012-07-28 06:16:36

标签: asp.net

我在数据库中保存文件路径。假设一个图像文件路径,它位于项目源文件夹之外。使用FileUpload Control收集此路径。接下来,将此路径从数据库读入字符串,如

string path=@dr["image"].ToString();

现在想用html图片标签显示这张图片。

new_main.InnerHtml = "<a href=\"" + linkimage + "\"><img src=\"" + path + "\" alt=\"image\" /> </a>";

它不起作用。检查网,但没有什么对我有用。关于解决方案的任何想法?提前谢谢。

2 个答案:

答案 0 :(得分:0)

您需要使用相对路径而不是使用物理路径。假设您在d:\ Websites \ Testsite \中托管了网站,那么它是物理路径,您可以通过提供网址http://yourdomain/Testsite/first.html来访问它然后这是虚拟的路径你必须给linkimage和路径一个虚拟路径。

您可以访问网站文件夹中的文件,也可以在网站文件夹之外创建文件夹的虚拟目录,并通过虚拟目录访问它。本文将向您解释have to make a virtual directory

假设您有网站文件夹d:\ websites \ Testsite并且您想要访问d:\ Data \ Testfile.jpg中的文件,请在TestWebsite的一侧指向d:\ Data并通过虚拟文件访问其中的文件。目录

答案 1 :(得分:0)

你的图像路径不是相对的,例如。 〜/ Images / myimage.png是D:\ data \ myimage.png的内容。如果您的图像路径是相对的,请尝试此示例

string Path="~/Images/myimage.png";
    new_main.InnerHtml = string.Format(@"<a href='{0}'><img src='{1}' alt='image' /> </a>",Path);