Я создал программу, которая имеет возможность настроить 2 ключа для друг друга, например:
Key 1 = key a,
key 2 = key b,
key 3 = key c,
etc
Со следующей страницей конфигурации:

При нажатии кнопки отправки он отправит конфигурацию в базу данных:

Это работает нормально, но теперь яя пытаюсь создать страницу редактирования для конфигурации.На этой странице конфигурации я использую запрос, который получает конфигурацию из базы данных и помещает ее в WebGrid:

Запрос:
var v = (from a in dbProducts.MapperConfigs
where
a.MappingID.Equals(id)
select a
);
Это получит всю конфигурацию, в левой части WebGrid я просто поместил ключи: key1, key2, key3, key4 и т. Д. Но с правой стороны я хочу, чтобы у пользователя был выбор, которыйключ для подключения к key1, key2, key3 и т. д. Поэтому я использую раскрывающийся список, однако этот раскрывающийся список заполняется элементом SelectListItem со следующим кодом:
Контроллер:
foreach (var item in v)
{
list.Add(item.OtherKey, item.OtherKeyType);
}
ViewBag.OtherKeysList = new SelectList(list, "OtherKey");
WebGrid вПредставление:
grid.Column(columnName: "OtherKey", header: "OtherKey", format: @<text>@Html.DropDownList("OtherKey", (IEnumerable<SelectListItem>)ViewBag.OtherKeysList, new { @class = "extra-class" })</text>)))
Это приведет к тому, что все ключи, keyA, KeyB, KeyC будут помещены в DropDownList, но не так, как настроено.Я пытаюсь получить значения по умолчанию в моем выпадающем списке, как было настроено ранее.
У кого-нибудь есть предложения, как этого добиться?
Заранее спасибо