L'affichage d'un formulaire avec une pièce jointe à un contrôleur de monorail
-
22-09-2019 - |
Question
I ont la forme suivante (en braille):
<form method="post" enctype="multipart/form-data" action="${UrlHelper.For({@action:'Upload'})}">
<p><b>Select Template:</b>
<select id="template">
<option selected>Select One..</option>
<option value="Research">Research</option>
</select>
</p>
<br/>
<p><b>Download Worksheet:</b> <a id="downloadLink">Worksheet</a></p>
<br/>
<p><b>Research Item Upload</b></p>
<fieldset>
<legend>Upload Research Items File</legend>
<label for="file">File</label>
<input type="file" name="file" size="80" accept="application/vnd.ms-excel,application/excel,application/x-msexcel" />
<br />
<input type="submit" value="Upload" />
</fieldset>
</form>
Quels sont les postes à la signature de la méthode suivante sur mon contrôleur:
[AccessibleThrough(Verb.Post)]
public UploadResults Upload(string template, [HttpPostedFileAdapterBinder] IHttpPostedFileAdapter file) {}
Quand je posterai la forme, je ne reçois que le fichier. Le modèle var est nul et je ne sais pas pourquoi. Quelqu'un voit-il quelque chose d'évident, je suis absent?
La solution
Vous manque l'attribut name
sur le <select>
:
<select name="template" id="template">
...
</select>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow