Asp.net mvc liste de sélection

J'ai besoin de créer une liste de sélection, la préservation de l'état, qui ne fait pas partie du modèle passé à la vue. Je suppose que je devrais être à l'aide d'un ViewBag pour passer d'une Liste à la Vue ? Tout conseil sur la mise en œuvre et la façon de préserver l'état de la liste de sélection (comment puis-je passer la valeur sélectionnée de retour à l'action et à la vue de nouveau (possible façons de le faire) ?

L'Action dès maintenant:

public ActionResult Images(string x, string y)
{
//some code 

ContentPage cp = this.ContentPage;

return View(cp);
} 

//Post to action with same name:
[HttpPost]
public ActionResult Images(string someParameter)
 {

    ContentPage cp = this.ContentPage;

    return View(cp);
 }

La vue dès maintenant :

@model ContentPage
@{
ViewBag.Title = "Images";
CmsBaseController controller = (this.ViewContext.Controller as CmsBaseController);
}
@using (Html.BeginForm())
{ 
<div>

//This should go to List<SelectListItem> as I understand
<select name="perpage" id="perpage" onchange='submit();'>
           <option value="1">1</option>
           <option value="2">2</option>
           <option value="3">3</option>

</select>
</div>
}

Merci!!!!!!

Pourquoi n'est-il pas partie du modèle? Faire un ViewModel avec le selectlist est probablement l'option la plus facile.

OriginalL'auteur mishap | 2011-08-26