我想知道如何使用文件上传更改另一页面上的图像。我已经创建了一个管理面板,可以更改其他页面上的文本和颜色,但是,我正在努力解决如何使用图像。
这是通过Visual Studio上的ASP.NET和C#
任何帮助将不胜感激, 感谢
答案 0 :(得分:0)
这是简化的示例代码。 FileUpload.SaveAs以静默方式覆盖现有文件。
<%--.aspx file --%>
Upload image: <asp:FileUpload ID="fuImage" runat="server" /><br />
Save file as: <asp:TextBox ID="txtNewName" placeholder="/images/myPic.jpg" runat="server" Width="30px"></asp:TextBox><br />
<asp:Button ID="btnRun" runat="server" Text="Save" onClick="btnRun_Click" />
//.aspx.cs file
protected void btnRun_Click(object sender, EventArgs e)
{
fuImage.SaveAs(Server.MapPath("~" + txtNewName.Text));
}
答案 1 :(得分:0)
将图像的字节存储到属性中。
public byte[] someProperty{get;set;}
HttpPostedFile postedFile = imgFile.PostedFile;
string fileExtension = Path.GetExtension(postedFile.FileName);
if (fileExtension.ToLower() == ".jpg" || fileExtension.ToLower() == ".png")
{
Stream stream = postedFile.InputStream;
BinaryReader reader = new BinaryReader(stream);
byte[] imgByte = reader.ReadBytes((int)stream.Length);
}
someProperty = imgByte;
Session["yourImg"] = someProperty;
在要更改<img>
的第二页上,只需获取字节并将其转换为字符串base64。
string str = Convert.ToBase64String(Session["yourImg"] as byte[]);
imageID.Src = "data:Image/png;base64," + str;
有很多方法可以将值从webform传递到另一个webform会话只是一种方式,但有很多方法,得到它here