получить нулевой путь при загрузке изображения загрузить в .net - PullRequest
1 голос
/ 18 октября 2010

Я использовал управление загрузкой файлов на asp.net, но при сохранении. My code-

<asp:FileUpload ID="fuProductLogo" runat="server" CssClass="file paddBottom5px"  />

.cs код получает-

if (fuProductLogo.PostedFile != null && fuProductLogo.PostedFile.ContentLength > 0)
                {
...
}

, но получаю.PstedFile и .CountLength приближаются к нулю, но тот же код работает нормально на другой странице. Пожалуйста, помогите.

Ответы [ 2 ]

1 голос
/ 18 октября 2010

Здесь нужно проверить несколько вещей:

  • , как сказал @williem, удалить панель обновления из формы, если вы ее используете
  • добавить enctype="application/x-www-form-urlencoded" в тег формы

Пожалуйста, не забудьте обновить ваш пост после внесения изменений и проверок кода.

0 голосов
/ 18 октября 2010

Если FileUpload находится в UpdatePanel, он будет очищаться при каждой обратной передаче ajax.Вы можете использовать несколько UpdatePanels вокруг элемента управления FileUpload и сохранить FileUpload вне их.Также убедитесь, что кнопка, которая вызывает фактическую загрузку, выполняет реальную обратную передачу, а не асинхронную обратную передачу.Сделайте это, добавив кнопку в PostbackTrigger его UpdatePanel или вынув ее из UpdatePanel.

<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
    <ContentTemplate>
        <asp:TextBox ID="TextBox2" runat="server" />
        <asp:Button ID="Submit" runat="server" Text="Submit" />
    </ContentTemplate>
    <Triggers>
        <asp:PostBackTrigger ControlID="Submit" />
    </Triggers>
</asp:UpdatePanel>  

Вы также можете использовать элемент управления AsyncFileUpload из набора инструментов Asp.net Ajax, он работает внутри UpdatePanel, но это немного сложнее, чтобы заставить это работать.

...