У меня есть вид Razor, где я редактирую объект Document
и пытаюсь изменить связанную запись Currency
. Доступные Currency
перечислены в выпадающем списке.Выберите объект из выпадающего списка
У меня есть два класса в EF, как показано ниже.
public class Document
{
public Currency CurrencyCode { get; set; }
}
public class Currency
{
[Key]
public string CurrencyCode { get; set; }
[Column(TypeName = "Money")]
public decimal ExchangeRate { get; set; }
}
Я создаю выпадающий список, как это:
@Html.DropDownListFor(m => m.CurrencyCode.CurrencyCode, new SelectList(ViewBag.Currencies, "CurrencyCode", "CurrencyCode"), Model.LocalCurrencyCode.CurrencyCode)
Когда я отправляю вид с помощью кнопки отправки я могу видеть, что значение опубликовано: CurrencyCode.CurrencyCode:USD
. Связующее устройство Model отлично подходит для привязки всех моих простых полей данных (другие поля не показаны). Но объект Document.CurrencyCode остается нулевым.
Мой план состоял в том, чтобы вернуть значение CurrencyCode, а затем посмотреть фактическую ссылку на объект с помощью Entity Framework и связать ее. Но прямо сейчас я даже не получу наполовину заполненный объект назад ...
Только значения, которые находятся в вспомогательном (кроме дисплея), возвращаются обратно в контроллер. Если вы хотите, чтобы document.currencycode возвращался, вы должны быть скрытым или что-то вроде этого –