У меня есть этот код:
@Html.DropDownList("ddlCouponsAppointment",
Model.Coupons.Select(a => new SelectListItem {
Text = a.Name,
Value = a.CouponId.ToString(),
Selected = (a.CouponId == Model.CouponForAppointmentReminders.CouponId)
}),
"None",
new { @class = "normalcell" })
Это работало целую вечность.Теперь он выдает ошибку, о которой мне говорит гугл, потому что мне не разрешено вызывать ToString для сущности, которая отображается на класс (этот класс не изменился, поэтому я не знаю, как он работал раньше).Поэтому я добавил свойство CouponIdStr, которое является строковым представлением.Это не работает (взрывается, потому что свойство не сопоставлено с БД).Я попытался сделать значение равным string.Empty + a.CouponId (поскольку C # объединял бы это как строку).Он взрывается.
Итак, я попробовал это:
@Html.DropDownList("ddlCouponsAppointment",
new SelectList(Model.Coupons,
"Name",
"CouponId",
Model.CouponForAppointmentReminders.CouponId),
"None",
new { @class = "normalcell" })
Это работает, но не показывает выбранный элемент.У кого-нибудь есть предложения?