MVC6 Dropdown-Liste der Länder

Ich versuche, MVC6-Tag-Helfer zu verwenden, um eine Dropdown-Liste mit CountryCode und CountryName zu erstellen, damit ein Benutzer nach der Registrierung sein Land auswählen kann. Der relevante Teil der Ansicht sieht bisher so aus

    <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>

Der relevante Teil des Ansichtsmodells sieht so aus

    [Display(Name = "Country")]
    public string CountryCode { get; set; }
    public IEnumerable<Country> Countries { get; set; }

Ein Land sieht so aus

    public partial class Country
{
    [Key]
    public string CountryCode { get; set; }
    public string CountryName { get; set; }
    public virtual ICollection<ApplicationUser> Users { get; set; }
}

Der Controller gibt eine Liste der Länder an das Ansichtsmodell zurück.

            var model = new IndexViewModel
        {
            CountryCode = user.CountryCode,
            Countries =_customersContext.Countries.OrderBy(c=>c.CountryName),
        };
        return View(model);
    }

aber in der Ansichtasp-items="@Model.Countries" hat eine schnörkelloseCannot convert Country to SelectListItem

Auch ich kann nicht finden, wie in dem Formular CountryCode als die zurückzugebende Eigenschaft und CountryName als die anzuzeigende Eigenschaft angegeben wird.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage