Asp.net mvc DropDownList用于在修改后的Razor页面中不返回选定值

Asp.net mvc DropDownList用于在修改后的Razor页面中不返回选定值,asp.net-mvc,razor,.net-core,Asp.net Mvc,Razor,.net Core,我是Razor的新手,我使用的是默认模板。我有一个ViewModel,其中包含三个模型: public class CarAndOwnerViewModel { public IEnumerable<SelectListItem> Cars { get; set; } public SelectListItem SelectedCar { get; set; } public OwnerModel Person{ get; se

我是Razor的新手,我使用的是默认模板。我有一个ViewModel,其中包含三个模型:

public class CarAndOwnerViewModel
    {
        public IEnumerable<SelectListItem> Cars { get; set; }
        public SelectListItem SelectedCar { get; set; }
        public OwnerModel Person{ get; set; }
    }
提交此下拉列表时,CarAndOwnerViewModel.SelectedCar的值为空。我有一个包含以下内容的文本框,它位于CarAndOwnerViewModel.Owner.Name中:

<input asp-for="Owner.Naame" class="form-control" />


我在输入框中填写的内容将被传递。我不知道为什么输入框工作,但选择框不工作

问题是
SelectedCar
应该是
int
而不是
SelectedItem

将班级改为

public class CarAndOwnerViewModel
    {
        public IEnumerable<SelectListItem> Cars { get; set; }
        public int SelectedCar { get; set; }
        public OwnerModel Person{ get; set; }
    }
公共类CarAndOwnerViewModel
{
公共IEnumerable汽车{get;set;}
public int SelectedCar{get;set;}
公有人模型人{get;set;}
}
修正了这个问题

public class CarAndOwnerViewModel
    {
        public IEnumerable<SelectListItem> Cars { get; set; }
        public int SelectedCar { get; set; }
        public OwnerModel Person{ get; set; }
    }