在我的ViewModel中,我传递了一个IEnumerable属性,该属性加载了网页上下拉框的值列表:
// Drop-down list values...
public IEnumerable< PAYMENT_METHODS > PaymentMethods { get; set; }
我在MVC视图中使用它们如下:
@Html.DropDownListFor(x => Model.objConsultant.Profile.CDE_PAYMENT_METHOD, new SelectList(Model.PaymentMethods, "CDE_PAYMENT_METHOD", "TXT_PAYMENT_METHOD_DESCRIPTION"), htmlAttributes: new { id = "ddlbPaymentMethod" })
我在网页上有几个按钮,可以在用户使用网页时执行回发操作。问题是在回发后,PaymentMethods属性为null,因此在页面加载时抛出异常。 为了解决这个问题,我必须在原始GET索引操作期间将PaymentMethods数据保存在Session变量上,然后在POST Index操作时从Session恢复PaymentMethods属性。 我错过了什么吗?为什么不在后期操作中保存IEnumerable数据?