ASP.Net MVC:Models.States不包含名称为“ID”的属性

时间:2016-01-11 13:15:04

标签: asp.net-mvc

当我运行我的代码时,我收到此错误

  

Models.States不包含名称为“ID”

的属性

但我的州和city class has property called ID and name

这里我给出了我的完整代码。只是看到并告诉我我在哪里犯了错误?

viewmode和model class

public class MainViewModel
{
    public List<Student> Students { get; set; }
    public int SelectedState = 0;
    public int SelectedCity = 0;
}

public class Student
{
    public int ID = 0;
    public string Name = "";
    public int StateID = 0;
    public int CityID = 0;
    public List<States> States { get; set; }
    public List<Cities> Cities { get; set; }

}

public class States
{
    public int ID = 0;
    public string Name = "";
}

public class Cities
{
    public int ID = 0;
    public string Name = "";
}

我手动填充模型的控制器

 public ActionResult Index()
        {
            MainViewModel oVm = new MainViewModel()
            {
                Students = new List<Student>() {
                    new Student
                    {
                        ID=1,
                        Name="JoyDev",
                        StateID=1,
                        CityID=1,
                        States=new List<States>()
                        {
                            new States
                            {
                                ID=1,
                                Name="WestBengal",
                            },
                            new States
                            {
                                ID=2,
                                Name="Bihar",
                            },
                            new States
                            {
                                ID=3,
                                Name="Orrisa",
                            }

                        },
                        Cities=new List<Cities>()
                        {
                            new Cities
                            {
                                ID=1,
                                Name="Alipur"
                            },
                            new Cities
                            {
                                ID=2,
                                Name="Asansol"
                            },
                            new Cities
                            {
                                ID=3,
                                Name="Andul"
                            }

                        }
                    },

//***********
                    new Student
                    {
                        ID=1,
                        Name="Mukti",
                        StateID=2,
                        CityID=1,
                        States=new List<States>()
                        {
                            new States
                            {
                                ID=1,
                                Name="WestBengal",
                            },
                            new States
                            {
                                ID=2,
                                Name="Bihar",
                            },
                            new States
                            {
                                ID=3,
                                Name="Orrisa",
                            }

                        },
                        Cities=new List<Cities>()
                        {
                            new Cities
                            {
                                ID=1,
                                Name="Janpur"
                            },
                            new Cities
                            {
                                ID=2,
                                Name="Madhubani"
                            },
                            new Cities
                            {
                                ID=3,
                                Name="Kanti"
                            }

                        }
                    },
//***********
                    new Student
                    {
                        ID=1,
                        Name="Somnath",
                        StateID=3,
                        CityID=2,
                        States=new List<States>()
                        {
                            new States
                            {
                                ID=1,
                                Name="WestBengal",
                            },
                            new States
                            {
                                ID=2,
                                Name="Bihar",
                            },
                            new States
                            {
                                ID=3,
                                Name="Orrisa",
                            }

                        },
                        Cities=new List<Cities>()
                        {
                            new Cities
                            {
                                ID=1,
                                Name="Chandapur"
                            },
                            new Cities
                            {
                                ID=2,
                                Name="Dhankauda"
                            },
                            new Cities
                            {
                                ID=3,
                                Name="Konarak"
                            }

                        }
                    }


                }

            };

            return View(oVm);
        }

我的观看代码

@model BuildTable.Models.MainViewModel
@{
    ViewBag.Title = "Home Page";
}

<div>
    <table>
    <tr>
        <td>ID</td>
        <td>Name</td>
        <td>State</td>
        <td>City</td>
    </tr>

        @for(int i = 0; i < Model.Students.Count; i++)
        {
            <tr>
                <td><input type="text" value="@Model.Students[i].ID" /></td>
                <td><input type="text" value="@Model.Students[i].Name" /></td>
                <td>
                    @Html.DropDownListFor(m => m.Students[i].StateID, new SelectList(Model.Students[i].States, "ID", "Name",Model.Students[i].StateID), "-- Select States--", new { @class = "edit-mode" })
                </td>
                <td>
                    @Html.DropDownListFor(m => m.Students[i].CityID, new SelectList(Model.Students[i].Cities, "ID", "Name",Model.Students[i].CityID), "-- Select Cities--", new { @class = "edit-mode" })
                </td>
            </tr>
        }
    </table>
</div>

请告诉我代码中的错误。感谢

1 个答案:

答案 0 :(得分:3)

按如下方式更新您所在的州和城市类

public class States
{
    public int ID { get; set; }
    public string Name { get; set; }
}

public class Cities
{
    public int ID { get; set; }
    public string Name { get; set; }
}