Je développe un formulaire dans ASP.Net MVC où il contient un <input type="file" />
qui n'est pas obligatoire dans un formulaire.Request.File.Count est toujours défini sur 1 lorsque le téléchargement de fichier dans ASP.Net MVC a rencontré une erreur précédente
Dans mon contrôleur, j'ai ce code:
[AcceptVerbs(HttpVerbs.Post)]
[ValidateInput(false)]
public ActionResult Create(FormCollection collection) {
...
//get uploaded file
if (Request.Files.Count > 0)
{
file = Request.Files["imgFileUpload"];
if (file.ContentLength == 0)
{
throw new InvalidOperationException("File contents are empty");
}
...
}
...
}
Maintenant, lorsqu'un utilisateur télécharge un fichier qui n'a pas de contenu, la forme soulèverait une exception et invite l'utilisateur à ce sujet - qui devrait .
Maintenant, si un utilisateur décide qu'il ne téléchargera plus aucun fichier et cliquera sur le bouton de soumission, l'exception précédente s'affichera toujours, ce qui est assez bizarre.
J'ai essayé de vérifier les valeurs pour Request.Files
et j'ai remarqué que son compte est toujours à 1 ... il pense toujours qu'il y a un fichier là, étant donné que l'utilisateur n'a placé aucun fichier sur le contrôle <input type="file" />
.
Quelqu'un a-t-il déjà rencontré ce problème? Dans l'affirmative, quelles mesures avez-vous prises pour empêcher la réexécution de l'exception précédente?
Merci beaucoup!
s'il vous plaît ....... – Luke