C# - 使用 WebImage.GetImageFromRequest() 进行多次上传
C# - Use WebImage.GetImageFromRequest() with multiple uploads
我正在尝试从一个表单上传多张图片。然后使用 WebImage.GetImageFromRequest() 抓取图像。这适用于单个上传字段,但我不确定如何使用它来获取多个文件。
我的HTML表格:
<input id="uploadBtn1" type="file" name="Image1" accept=".jpg,.png" class="upload"/>
<input id="uploadBtn2" type="file" name="Image2" accept=".jpg,.png" class="upload"/>
<input id="uploadBtn3" type="file" name="Image3" accept=".jpg,.png" class="upload"/>
我的 C# 代码
if (IsPost)
{
photo1 = WebImage.GetImageFromRequest("image1");
newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo1.FileName);
imagePath = @"branding\" + newFileName;
photo1.Save(@"~\" + imagePath);
photo2 = WebImage.GetImageFromRequest("image2");
newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo2.FileName);
imagePath = @"branding\" + newFileName;
photo2.Save(@"~\" + imagePath);
photo3 = WebImage.GetImageFromRequest("image3");
newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo3.FileName);
imagePath = @"branding\" + newFileName;
photo3.Save(@"~\" + imagePath);
}
这会引发错误:
System.NullReferenceException: 对象引用未设置到对象的实例。
第 101 行:newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo3.FileName);
我认为我使用的语法不正确:photo1 = WebImage.GetImageFromRequest("image1");
我如何指定这个以获得 "image1" 上传字段?还有 "image2"、"image3" 等?
你包括了吗
enctype="multipart/form-data"
进入你的表单?
示例:
<form action="" method="post" enctype="multipart/form-data">
这是一个如何遍历多个文件的例子:
https://forums.asp.net/t/2024891.aspx?WebImage+helper+multiple+image+upload
我正在尝试从一个表单上传多张图片。然后使用 WebImage.GetImageFromRequest() 抓取图像。这适用于单个上传字段,但我不确定如何使用它来获取多个文件。
我的HTML表格:
<input id="uploadBtn1" type="file" name="Image1" accept=".jpg,.png" class="upload"/>
<input id="uploadBtn2" type="file" name="Image2" accept=".jpg,.png" class="upload"/>
<input id="uploadBtn3" type="file" name="Image3" accept=".jpg,.png" class="upload"/>
我的 C# 代码
if (IsPost)
{
photo1 = WebImage.GetImageFromRequest("image1");
newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo1.FileName);
imagePath = @"branding\" + newFileName;
photo1.Save(@"~\" + imagePath);
photo2 = WebImage.GetImageFromRequest("image2");
newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo2.FileName);
imagePath = @"branding\" + newFileName;
photo2.Save(@"~\" + imagePath);
photo3 = WebImage.GetImageFromRequest("image3");
newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo3.FileName);
imagePath = @"branding\" + newFileName;
photo3.Save(@"~\" + imagePath);
}
这会引发错误: System.NullReferenceException: 对象引用未设置到对象的实例。 第 101 行:newFileName = Guid.NewGuid().ToString() + "_" + Path.GetFileName(photo3.FileName);
我认为我使用的语法不正确:photo1 = WebImage.GetImageFromRequest("image1");
我如何指定这个以获得 "image1" 上传字段?还有 "image2"、"image3" 等?
你包括了吗
enctype="multipart/form-data"
进入你的表单?
示例:
<form action="" method="post" enctype="multipart/form-data">
这是一个如何遍历多个文件的例子:
https://forums.asp.net/t/2024891.aspx?WebImage+helper+multiple+image+upload