Lista suspensa de países do MVC6
Estou tentando usar os MVC6 Tag Helpers para criar uma lista suspensa de CountryCode e CountryName para que um usuário possa selecionar seu país após o registro. A parte relevante da visualização se parece com isso até agora
<form asp-controller="Manage" asp-action="EditCountry" asp-route-returnurl="@ViewData["ReturnUrl"]">
<div asp-validation-summary="ValidationSummary.ModelOnly" class="text-danger"></div>
<select asp-for="CountryCode" asp-items="@Model.Countries"></select>
A parte relevante do modelo de exibição se parece com isso
[Display(Name = "Country")]
public string CountryCode { get; set; }
public IEnumerable<Country> Countries { get; set; }
Um país se parece com isso
public partial class Country
{
[Key]
public string CountryCode { get; set; }
public string CountryName { get; set; }
public virtual ICollection<ApplicationUser> Users { get; set; }
}
O controlador retorna uma lista de países para o viewmodel
var model = new IndexViewModel
{
CountryCode = user.CountryCode,
Countries =_customersContext.Countries.OrderBy(c=>c.CountryName),
};
return View(model);
}
mas na vistaasp-items="@Model.Countries"
tem um rabiscoCannot convert Country to SelectListItem
Também não consigo encontrar como, no formulário, especificar CountryCode como a propriedade a retornar e CountryName como a propriedade a ser exibida.