Je crée une page interne qui permet aux utilisateurs de confiance de modifier manuellement une configuration de paramètre via un formulaire. Les entrées de cette configuration sont une liste de setupparameters (de taille inconnue), chacune avec une liste spécifique de valeurs. L'utilisateur peut alors sélectionner une valeur pour tout ou un sous-ensemble des paramètres.Formulaire ASP.NET MVC traitant un nombre inconnu d'entrées
J'ai essayé d'illustrer cela avec mon modèle actuel pour la vue
public class SetupModel
{
public List<SetupParameter> Parameters { get; set; }
}
public class SetupParameter
{
public string ParameterName { get; set; }
// list with text=paramvalue, value=paramvalueid
public SelectList ParameterValueList { get; set; }
// id of the selected parametervalue if any
public int? SelectedParameterValueID { get; set; }
}
Ma tentative actuelle à rendre une vue pour cela:
<% using (Html.BeginForm("Update", "Parameters") {%>
...
<% foreach(var parameter in Model.Parameters) { %>
<div><%: parameter.ParameterName %></div>
<div><%: Html.DropDownListFor(x => parameter.SelectedParameterValueID, parameter.ParameterValueList, "Please select") %></div>
<% } %>
...
Ma question est de savoir comment puis-je rendre une vue cela me permet de soumettre le formulaire et de ramener un modèle raisonnablement compréhensible à mon action de formulaire qui me permettra d'obtenir la liste des valeurs de paramètres sélectionnés. Je ne suis pas au courant des meilleures pratiques ou des trucs ici, donc je vais apprécier tous les commentaires que je reçois :)