Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

[ASP.NET]FileUpload et UpdatePanel

Sur un projet j'ai été confronté à un problème quant à l'utilisation d'un FileUpload ASP.NET dans un UpdatePanel.

En effet, pour des raisons de sécurité, le contrôle FileUpload ne fonctionne pas à l'intérieur d'un UpdatePanel.
L'UpdatePanel  fait ses requêtes de mise à jour partiel en utilisant l'objet XmlHttpRequest, hors cet objet ne gère pas l'envoi de fichier.

L'upload de fichier nécessite un PostBack complet de la page.

Pour contourner ce problème une solution consiste à créer un PostBackTrigger sur le bouton qui déclenchera l'upload:

<asp:updatepanel runat="server" id="UpdatePanel1">
        <contenttemplate>
            <asp:FileUpload runat="server" id="Upload1" />
            <asp:button runat="server" id="ButtonSubmit" text="Postback" />
        </contenttemplate>
        <triggers>
            <asp:postbacktrigger controlid="ButtonSubmit" />
        </triggers>
</asp:updatepanel>

Vous pouvez également spécifier au ScriptManager les contrôles qui déclanche un PostBack complet de la page (dans le code-behind):

ScriptManager.GetCurrent(Page).RegisterPostBackControl(Upload1);

Autre méthode qui fonctionne également : Vous pouvez utiliser une iFrame pour appeler une page d'Upload dans une frame. L'inconvénient c'est que les iFrame ne sont pas XHTML compliant Tongue out

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: vendredi 16 mai 2008 17:16 par Guillaume Brout
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [Refactoring] ReSharper pour Visual Studio 2010 (Preview) par Thomas Jaskula le il y a 1 heure et 16 minutes

- [Refactoring] Analyser vos exceptions avec ReSharper Exceptional par Thomas Jaskula le il y a 2 heures et 30 minutes

- SharePoint 2007 : patterns & practices SharePoint Guidance par Philippe Sentenac [MVP SharePoint] le il y a 16 heures et 10 minutes

- [Visual Studio 2010] Les tests cases c’est bien, mais je vais devoir tout réécrire ? par Etienne Margraff le il y a 17 heures et 6 minutes

- MVP[Gribouillon].AddYear par The Grib's Lair [Sébastien PICAMELOT - MVP SharePoint] le il y a 17 heures et 21 minutes

- Clinique INSIA - Projet de fin d’Etudes (Silverlight 3 MVVM et OutOfBrowser, WCF, TFS) - Part 1 par David REI le 07-02-2009, 23:38

- C’est la crise ? Bah pourquoi cramer du budget pub alors ? par Nix's Blog le 07-02-2009, 15:31

- Soyons MVP ! par TheSaib .NET blog le 07-02-2009, 12:15

- SharePoint : Gestion des Erreurs 6398, 7076 et 6482 par Blog Technique de Romelard Fabrice le 07-02-2009, 11:53

- EF avec WPF par Matthieu MEZIL le 07-02-2009, 10:18