Comment télécharger plusieurs fichiers en utilisant webclient UploadFile, UploadValues in C#?Comment télécharger plusieurs fichiers en utilisant webclient UploadFile, UploadValues in C#?
Répondre
This blog post détails exactement comment télécharger plusieurs fichiers en utilisant WebClient.
Si vous souhaitez télécharger à la fois les champs de formulaire et un fichier dans le même POST, vous ne pouvez pas utiliser WebClient tel quel - à la place, il devra être étendu. Voici un extrait de this article expliquer ce qui est nécessaire:
la seule option est de créer une coutume mise en œuvre conforme à rfc1867, rfc2388 et la spécification W3C multipart/form-data que permettra le téléchargement de fichiers avec champs de formulaire supplémentaires et expose contrôle des cookies et des en-têtes.
Voici trois mises en œuvre, en utilisant des approches légèrement différentes, mais tous devraient travailler pour permettre aux données de formulaire en plusieurs parties:
- http://www.codeproject.com/Articles/72232/Csharp-File-Upload-with-form-fields-cookies-and-he.aspx
- http://www.codeproject.com/KB/cs/uploadfileex.aspx
- http://aspnetupload.com/Upload-File-POST-HttpWebRequest-WebClient-RFC-1867.aspx
WebClient.UploadValues n'est pas conçu pour télécharger des fichiers - il est plutôt utilisé pour envoyer des valeurs de formulaire POST-ed au serveur. Vous souhaitez utiliser WebClient.UploadFile pour télécharger des fichiers ou l'un des exemples avancés ci-dessus.
Oh non! Votre lien vers le blog, pointez sur ce post, au lieu de l'entrée de blog réelle. Est-ce que tu peux le réparer s'il te plaît? – SuitUp
oups, désolé, réparé maintenant. –
Je pense que cette solution n'est pas bonne pour moi, car j'envoie chaque fichier dans un POST séparé et sans UploadValues je ne peux pas envoyer plus d'informations. Pouvez-vous m'aider à envoyer des fichiers dans un POST et avec des données supplémentaires? – SuitUp