У меня есть элемент управления ASP.NET Repeater с элементом управления FileUpload в его шаблоне элемента.Ретранслятор ASP.NET находится внутри UpdatePanel как часть мастера, созданного из ASP.NET Multiview.Я пытаюсь загрузить каждый файл в каждом элементе управления FileUpload при нажатии кнопки «Отправить», но элементы управления FileUpload не сохраняют файл при отправке формы.Вот соответствующий код:
<asp:Repeater ID="RepeaterImages" runat="server" OnItemCommand="RepeaterBoxArts_ItemCommand">
<ItemTemplate>
<tr>
<td class="right">
Choose File:
</td>
<td>
<asp:FileUpload ID="FileUpload" runat="server" />
</td>
</tr>
</ItemTemplate>
foreach (RepeaterItem item in RepeaterImages.Items)
{
if (item.ItemType == ListItemType.Item
|| item.ItemType == ListItemType.AlternatingItem)
{
FileUpload fupload = (FileUpload)item.FindControl("FileUpload");
if (fupload.HasFile)
{
string path = Server.MapPath("~/images/");
fupload.SaveAs(path);
}
}
}
Когда я нажимаю Отправить, я хочу, чтобы все элементы управления FileUpload с файлом загружали свои файлы.Однако, если я запускаю пошаговый отладчик, он показывает, что каждый элемент управления FileUpload не имеет файла.Кажется, это проблема с постбэками, но я не уверен на 100%.