Bonjour et meilleurs voeux à tous,
Je veux pouvoir uploader un fichier dans une application MVC2.
Pour ce faire, j'ai défini ceci dans ma view:
Voici la code de mon controlleur MagicArrayController:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 using (Html.BeginForm("Upload", "MagicArray", FormMethod.Post, new { enctype = "multipart/form-data" })) { %> <div id="login" align="left"> <fieldset title="Data definition"> <table align="center"> <tr> <td align="center" colspan="2"><span class="error"><%: Model.Error %></span></td> </tr> <tr> <td align="right"><%= Html.RadioButton("inputdatadef", "My raw data in ZIP", false, new { onclick = "document.getElementById('id1').removeAttribute('disabled');document.getElementById('id0').setAttribute('disabled', 'disabled')" })%>My raw data in ZIP<br /></td> <td align="left"><input type="file" id="id1" name="InputData" disabled="disabled" /></td> </tr> <tr> <td align="right"> <input type="submit" value="back" name="back" /> </td> <td align="left"> <input type="submit" value="next" name="upload" /> </td> </tr> </table> </fieldset> </div> <% } %>
Je sais, c'est pas très évolué, je veux juste voir en débuggant que je tombe bien sur le WriteLine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 [HttpPost] public ActionResult Upload(MagicArrayModel model, HttpPostedFileBase file) { if (Request.Form.AllKeys.Contains("upload")) { Console.WriteLine("upload"); } return View(model); }
Or à l'exécution, je ne tombe même pas dans ce code ! Le navigateur me dit systématiquement Page not found !
Le plus drôle, c'est que si je supprime dans ma view new { enctype = "multipart/form-data" }, ça marche très bien.
J'imagine que j'ai mal écrit mon formulaire, mais j'arrive pas à savoir où exactement.
Merci d'avance de votre aide.
@++
Partager