0

数据库中的我的表包含一个类型为:图像的列。

我已经设法将图像上传到数据库。

但是几乎所有的教程都向我们展示了如何为图像控制器提供一个包含页面名称的 URL,以及一个包含数据库中所选行的 ID 的参数

例子:

//Database codes here... (query..etc..)
SqlDataReader myReader = myCommand.ExecuteReader();
if (myReader.HasRows == true)
{
    myReader.Read();
    Response.ContentType = "image/jpg";
    Response.BinaryWrite((byte[])myReader[0]);
    Image1.ImageUrl="User.aspx?imgid=1";
}

因此,当我单击应从数据库中获取此图像的特定按钮,然后将该 URL 提供给图像时,图像会全屏打开。但我不希望这样,假设我的页面中有空白空间对于 50px 宽和 50px 高的图像,我如何在这个空间内显示图像?并保留所有其他内容?就像用户页面,个人资料页面一样。

4

2 回答 2

3

您可以使用<img>标签控制图像的显示。因此,假设您获取并显示图像的 ASP.NET 页面称为ShowImage.aspx?ID=xxx.

创建一个名为的新页面ShowImageAt50px.aspx,并在该页面中添加以下标记:

<img src="ShowImage.aspx?ID=xxx" style="width:50px;" alt="" />

现在,当您访问时ShowImageAt50px.aspx,它将显示限制在 50 像素宽的图像。

于 2012-12-22T00:00:41.703 回答
-1

将图像存储在文件系统中并使用图像的文件名引用数据库中的图像通常更容易且不易出错。

我从来没有遇到过将图像存储在数据库中的充分理由。

此外,当您想编辑存储在数据库中的图像时,您必须将其从数据库中导出,然后重新导入。

于 2012-12-21T23:43:24.260 回答