J'essaie d'envoyer une liste de contrôle à mon contrôleur de mon point de vue. J'ajoute dynamiquement des éléments avec une zone de texte et un bouton, et je veux être capable de renvoyer tous ces éléments à ma vue dans une sorte de tableau. Comment ferais-je cela?Envoi de la sélection au contrôleur
J'ai eu l'modelcode suivante:
[HttpPost]
public ActionResult BasicIdentificationIndex(MyObject returndata, List<int> ints)
Et puis quelques boîtes d'entrée:
<input type="text" name="ints" value="1" />
<input type="text" name="ints" value="4" />
<input type="text" name="ints" value="2" />
<input type="text" name="ints" value="8" />
Ce code fonctionne et est retourné à mon contrôleur (non null).
EDIT: Mon problème est que je ne peux pas obtenir une liste de sélection pour afficher de nouveau à mon contrôleur. Je voudrais envoyer les documents suivants de retour à mon contrôleur:
<select name="selectfrom" id="select-from" multiple size="5">
<option value="String1">Item 1</option>
<option value="String2">Item 2</option>
<option value="String3">Item 3</option>
<option value="String4">Item 4</option>
</select>
Comment pourrais-je le faire de sorte que je puisse envoyer une liste de toutes les options (Chaîne1, String2, etc.) Accès à mon contrôleur? Je l'ai essayé ce qui suit:
Controller:
public ActionResult BasicIdentificationIndex(BasicIdentificationModel returndata,ICollection<String> AerialItems)
Modèle:
public String AerialItems { get; set; }
Vue:
<select name="AerialItems" id="select-to" multiple size="5">
<option value="5">Item 5</option>
<option value="6">Item 6</option>
<option value="7">Item 7</option>
</select>
Mais la L'élément retourné au contrôleur est toujours nul.
Que voulez-vous dire "correctement renvoyé à mon contrôleur"? Le paramètre ints était-il rempli? Est-ce que votre objet 'returndata' a également une propriété' ints' à laquelle il aurait pu aller? – AaronLS
Correctement comme dans non null. ints était en effet peuplé du code ci-dessus. Si je place ints à l'intérieur de returndata il est nul, donc je passais juste comme un second paramètre au lieu d'essayer de comprendre pourquoi il ne se lient pas à l'intérieur de mon objet. –
Tant que la propriété dans la classe MyObject est une liste publique Ints {get; set;} ', alors elle * devrait * fonctionner. Je ne pense pas que vous en ayez besoin, mais * pourriez * avoir besoin d'ajouter le constructeur par défaut de MyObject 'Ints = new List ();' pour qu'il soit non nul, mais je ne m'en souviens pas avec certitude. tête. –
AaronLS