MVC6 Lista desplegable de países

Estoy tratando de usar MVC6 Tag Helpers para crear una lista desplegable de CountryCode y CountryName para que un usuario pueda seleccionar su país después de registrarse. La parte relevante de la vista se ve así hasta ahora

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

La parte relevante del modelo de vista se ve así

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

Un país se ve así

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

El controlador devuelve una lista de países al modelo de vista

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

pero en la vistaasp-items="@Model.Countries" tiene un squigglyCannot convert Country to SelectListItem

Además, no puedo encontrar cómo en el formulario especificar CountryCode como la propiedad a devolver y CountryName como la propiedad a mostrar.

Respuestas a la pregunta(3)

Su respuesta a la pregunta