Sto tentando di utilizzare Html.DropDownListFor <> HtmlHelper e sto avendo un po 'di problemi di binding in post. L'HTML viene visualizzato correttamente ma non ho mai ricevuto un valore "selezionato" durante l'invio.MVC2 Binding non funziona per Html.DropDownListFor <>
<%= Html.DropDownListFor(m => m.TimeZones,
Model.TimeZones,
new { @class = "SecureDropDown",
name = "SelectedTimeZone" }) %>
[Bind(Exclude = "TimeZones")]
public class SettingsViewModel : ProfileBaseModel
{
public IEnumerable TimeZones { get; set; }
public string TimeZone { get; set; }
public SettingsViewModel()
{
TimeZones = GetTimeZones();
TimeZone = string.Empty;
}
private static IEnumerable GetTimeZones()
{
var timeZones = TimeZoneInfo.GetSystemTimeZones().ToList();
return timeZones.Select(t => new SelectListItem
{
Text = t.DisplayName,
Value = t.Id
});
}
}
Ho provato un paio di cose diverse e sono sicuro che sto facendo qualcosa di stupido ... semplicemente non sono sicuro di cosa si tratta :)
Che ha fatto il trucco. Cosa stavo facendo di sbagliato? – devlife
Come hai mostrato solo una parte del tuo codice, non posso dire cosa c'è che non va. –
Vedo cosa ho sbagliato. Piuttosto che fare DropDownListFor (x => x.TimeZone) l'ho fatto per x.TimeZones. Grazie per l'aiuto Darin. – devlife