Я следую этому уроку , который работает очень хорошо.Но проблема в том, что он обеспечивает только key
и без него value
(как показано на рисунке ниже).Как включить значения для каждого из этих ключей?
Проверенные элементы (Изображение)

Модель
[Required( ErrorMessage = "Selection is a MUST" )]
public string SelectedItem { get; set; }
private List<string> _items;
public List<string> Items
{
get
{
_items = new List<string>();
_items.Add("One");
_items.Add("Two");
_items.Add("Three");
return _items;
}
}
Контроллер
public class HomeController : Controller
{
//Render Action
[HttpGet]
public ViewResult Index()
{
DropdownListModel model = new DropdownListModel();
return View(model);
}
//Process Action
[HttpPost]
public ViewResult Index(DropdownListModel model)
{
//TODO: Validate using if(ModelState.IsValid) and process information
return View(model);
}
}
Вид
<div>
<!--Render the DropDownListmodel -->
@using (Html.BeginForm())
{
<p>@Html.ValidationSummary()</p>
<p>Select an Item : @Html.DropDownListFor(x => x.SelectedItem, new SelectList(Model.Items), "--Choose any Item--" )</p>
<input type="submit" value="Submit" />
}
<!-- Display Selected Item -->
@if (!String.IsNullOrWhiteSpace(Model.SelectedItem))
{
<span>Selected Item : @Model.SelectedItem</span>
}
</div>
ЧтоЯ попытался
Я заменил коды в моделях на код ниже.Но у меня ошибка: Models.KeyValueModel: : EntityType 'KeyValueModel' has no key defined. Define the key for this EntityType.
KeyValueModels: EntityType: EntitySet 'KeyValueModels' is based on type 'KeyValueModel' that has no keys defined.
public List<KeyValueModel> Items
{
get
{
List<KeyValueModel> item = new List<KeyValueModel>();
var n = new KeyValueModel();
n.Key = "1";
n.Value = "One";
item.Add(n);
n = new KeyValueModel();
n.Key = "2";
n.Value = "Second";
item.Add(n);
n = new KeyValueModel();
n.Key = "3";
n.Value = "Three";
item.Add(n);
return item;
}
}