J'ai un contrôle FileUpload (FileUpload1) sur mon formulaire Web, ainsi qu'un bouton "Sumbit", une étiquette et un champ caché qui contient un UserID. J'ai le code suivant dans l'événement de clic du bouton:FileUpload - Vérification qu'un fichier réel a été téléchargé
string path = Server.MapPath("~/userfiles/");
if (FileUpload.HasFile)
{
try
{
FileUpload1.SaveAs(path + UserID.Value + "/image.jpg");
}
catch
{
Label1.Text = "* unable to upload file";
Label1.Visible = true;
}
}
Cela fonctionne très bien si je télécharge un fichier réel. Toutefois, si je tape un nom de fichier inexistant (par exemple, "c: \ a.jpg", qui n'existe pas sur mon ordinateur) dans la zone de texte de FileUpload, et cliquez sur le bouton Sumbit, HasFile renvoie toujours la valeur true. De plus, SaveAs() ne lance aucune exception, et c'est une fonction vide qui ne renvoie aucune valeur indiquant le succès ou l'échec. Comment savoir si un fichier a été téléchargé?