gpt4 book ai didi

c# - 通过文件上传和保存到数据库 asp.net 的多个图像上传

转载 作者:太空狗 更新时间:2023-10-30 01:19:23 25 4
gpt4 key购买 nike

好的,所以我正在尝试选择多个图像并将它们保存在 asp.net 的数据库中。我不想使用任何插件或任何类型的脚本。

这是设计器页面:

<asp:FileUpload AllowMultiple="true"  ID="fileuploadimages" runat="server" />
<asp:Button runat="server" ID="btnUpload" CssClass="btnStyle" Text="Upload Image"
OnClick="btnUpload_Click" />

到目前为止,我已经在按钮上传事件上完成了此操作。它的作用是它允许我选择多个文件,比如如果我选择 3 张图像,它会将第一个文件三次保存在我的数据库中,并将它保存一次在“图片”文件夹中,而不是保存所有三个。

protected void btnUpload_Click(object sender, EventArgs e)
{
if (fileuploadimages.HasFile == false)
{
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", "<script>alert('No File Uploaded.')</script>", false);
}
else
{
foreach (var file in fileuploadimages.PostedFiles)
{
string filename =Path.GetFileName(fileuploadimages.PostedFile.FileName);

fileuploadimages.SaveAs(Server.MapPath("../Pictures/" + filename));

SqlCommand cmd = new SqlCommand("Insert into
EventPageView(Event_name,Event_Text,Image_Path)
values(@EventName,@EventText,@ImagePath)", conn);

cmd.Parameters.AddWithValue("@ImagePath", filename);
cmd.Parameters.AddWithValue("@EventName", txtEventName.Text);
cmd.Parameters.AddWithValue("@EventText", txtEnterDesc.Text);
conn.Open();
cmd.ExecuteNonQuery();

conn.Close();
BindDataList();
}
}
}

最佳答案

改变这两行:

string filename = Path.GetFileName(fileuploadimages.PostedFile.FileName);

fileuploadimages.SaveAs(Server.MapPath("../Pictures/" + filename));

string filename = Path.GetFileName(file.FileName);

file.SaveAs(Server.MapPath("../Pictures/" + filename));

希望对您有所帮助。因为你必须使用对象 file

关于c# - 通过文件上传和保存到数据库 asp.net 的多个图像上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23127874/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com