Как показать изображение после загрузки в asp.net fileupload

У меня есть элемент управления загрузкой файлов, который находится внутри панели обновлений. Я хочу отобразить изображение после завершения загрузки. ниже мой html-код

<form id="form1" runat="server">
    <br />
    <asp:ScriptManager ID="ScriptManager1" runat="server" />
    <br />
    <div>
        <br />
        <table width="50%" cellpadding="2" cellspacing="0">
            <br />
            <tr>
                <br />
                <td>
                    <br />
                    <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="conditional">
                        <ContentTemplate>
                            <br />
                            <asp:FileUpload ID="FileUpload1" runat="server" /><br />
                            <asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick="btnUpload_Click" /><br />
                        </ContentTemplate>
                        <Triggers> <asp:PostBackTrigger ControlID="btnUpload" /> </Triggers>  
                    </asp:UpdatePanel>
                    <br />
                      <asp:Image ID="imgViewFile" runat="server" />
                </td>
            </tr>  
        </table>
        <br />
    </div>
    <br />
</form>

Ниже мой код

protected void btnUpload_Click(object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {
        FileUpload1.SaveAs(MapPath("~/TEST/" + FileUpload1.FileName));
        imgViewFile.ImageUrl = Server.MapPath("~/TEST/" + FileUpload1.FileName);
    }       
}

Но изображение не показывает файл после загрузки. Кто-нибудь может мне помочь в этом ..?


person sandeep.mishra    schedule 16.02.2014    source источник


Ответы (2)


установить путь как

imgViewFile.ImageUrl = "~/TEST/" + FileUpload1.FileName;

и также поместите свое изображение в панель обновления

     <br />
    <asp:Image ID="imgViewFile" runat="server" />
</asp:UpdatePanel>
person Damith    schedule 16.02.2014

У меня тоже была эта проблема, и я сделал то, что предложил Дамит, но это не сработало, пока в моем случае я не заметил, что использую AsyncnPostBackTrigger в моем Trigger вместо PostBackTrigger. Затем он начал работать. Вы можете проверить, не совершаете ли вы ту же ошибку.

person Simpa    schedule 12.02.2016