Okay, CountryId is coming through as 0 since that's the default value for an int value (or is it supposed to be IdCountry, as that's shown in your code).
You'll want to use a slightly different helper class, the Html.DropDownListFor(). It should look like this:
@Html.DropDownListFor(model => model.IdCountry, Model.mySelectListItems, new { @class = "form-control" })
Now, you'll need to make a couple of changes on the model side. Since I don't know your model name, I'll just call it ViewModel:
public class ViewModel
{
...
public IEnumerable<selectlistitem> mySelectListItems
...
}
</selectlistitem>
And finally, since I don't know how you're building your ViewModel, we'll look at a controller-based implementation:
public ActionResult MyViewAction()
{
...
ViewModelInstance.mySelectListItems =
MyDbContext.Countries.Select(x =>
new SelectListItem {
Value = x.Id,
Text = x.Name
}).ToArray();
...
}
There is a fairly comprehensive walkthrough at:
DropDownListFor with ASP.NET MVC[
^]