我正在创建一个用户可以在其中注册帐户的网站。我想让他们为他们的个人资料图片上传图片,但我不知道该怎么做。
我有一个数据库,其中包含有关用户的信息,因此当他们想要查看或编辑他们的个人资料时,他们可以做到。
我正在尝试使用 asp.net 中的文件上传控件来执行此操作,但是通过使用它,我可以将图像存储在表格中,但我不知道如何立即向用户显示上传的图像。我用 c# 在 asp.net 中进行编码。所以请建议我任何解决方案。
我正在创建一个用户可以在其中注册帐户的网站。我想让他们为他们的个人资料图片上传图片,但我不知道该怎么做。
我有一个数据库,其中包含有关用户的信息,因此当他们想要查看或编辑他们的个人资料时,他们可以做到。
我正在尝试使用 asp.net 中的文件上传控件来执行此操作,但是通过使用它,我可以将图像存储在表格中,但我不知道如何立即向用户显示上传的图像。我用 c# 在 asp.net 中进行编码。所以请建议我任何解决方案。
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;
}
}
}
您可以在 asp.net 文件上传控制的帮助下做到这一点。我给你一个链接,你可以参考。它就像一个穿行。
<asp:FileUpload ID="fileuploadImage" runat="server" />
这些东西在这个链接中得到了很好的解释。
如果您有任何困难,请随时询问。
这是您可以参考的另一个链接。