3

我正在创建一个用户可以在其中注册帐户的网站。我想让他们为他们的个人资料图片上传图片,但我不知道该怎么做。

我有一个数据库,其中包含有关用户的信息,因此当他们想要查看或编辑他们的个人资料时,他们可以做到。

我正在尝试使用 asp.net 中的文件上传控件来执行此操作,但是通过使用它,我可以将图像存储在表格中,但我不知道如何立即向用户显示上传的图像。我用 c# 在 asp.net 中进行编码。所以请建议我任何解决方案。

4

2 回答 2

3

HTML 中的图像由一个<img />元素显示,该元素具有一个src=""属性,该属性导致用户代理对该图像资源发出新请求。

因此,解决方案是为任何图像资源提供请求处理程序。

我假设您使用的是 WebForms(我现在讨厌转换为 MVC 合唱团的平台,但我离题了)。您可以使用.ashx处理程序执行此操作,如下所示:

<img src="ProfileImageHandler.ashx?userId=123" alt="Image for user 123" />

您的 ASHX 处理程序将具有如下逻辑:

public class Handler : IHttpHandler {

    public void ProcessRequest (HttpContext context) {

        context.Response.ContentType = "image/jpeg"; // or whatever the content-type of the image really is.

        Byte[] image = GetImageFromDatabase(context.Request.QueryString["userId"]);

        context.Response.Write( image ); // psuedo-code
    }

    public bool IsReusable {
        get {
            return false;
        }
    }
}
于 2013-06-05T11:12:44.617 回答
0

您可以在 asp.net 文件上传控制的帮助下做到这一点。我给你一个链接,你可以参考。它就像一个穿行。

<asp:FileUpload ID="fileuploadImage" runat="server" />

这些东西在这个链接中得到了很好的解释。

从数据库上传和检索图像

如果您有任何困难,请随时询问。

这是您可以参考的另一个链接。

将图像上传到数据库

于 2013-06-05T11:11:26.673 回答