请帮助,无法访问POST上的MVC下拉列表中的文本

raj*_*kba 2 asp.net-mvc drop-down-menu

我有一个MVC下拉列表(Html.DropDownList),其中包含已填充的电影列表.我想在执行表单提交时检索标题(值字段),描述(文本字段).我可以访问标题(值字段),但我无法访问说明.我的代码示例如下.

//查看模型.......

公共类电影院

{

    public string CinemaName { get; set; }

    public SelectList MoviesList { get; set; }

    public string MoviesName { get; set; }
Run Code Online (Sandbox Code Playgroud)

}

公共课电影

{

    public string Title { get; set; }

    public string Description { get; set; }
Run Code Online (Sandbox Code Playgroud)

}

//控制器

的[AcceptVerbs(HttpVerbs.Get)]

    public ActionResult Index()

    {

        Cinema _cinema = GetViewModel();

        ViewData.Model = _cinema;

        return View();

    }



    public IEnumerable<Movie> GetMovieList()

    {

        List<Movie> list = new List<Movie>();                        

        list.Add(new Movie(){ Title = "1", Description = "Batman" });

        list.Add(new Movie() { Title = "2", Description = "Metrix" });

        list.Add(new Movie() { Title = "3", Description = "Jaws" });

        return list;           

    }



    public Cinema GetViewModel()

    {

        var cinema = new Cinema();

        cinema.CinemaName = "Village";

        cinema.MoviesList = new SelectList(GetMovieList(), "Title", "Description", "Jaws");

        return cinema;

    }



    [AcceptVerbs(HttpVerbs.Post)]

    public ActionResult Update(Cinema _cinema)

    {

        //Here I need both value and the text  field from the selected item in the drop down

        string movieName = _cinema.MoviesName;

        return View();

  }
Run Code Online (Sandbox Code Playgroud)

//视图

"%>

Home Page
Run Code Online (Sandbox Code Playgroud)

<% using (Html.BeginForm("Update", "Home"))

   { %>

<p>

    To learn more about ASP.NET MVC visit <a href="http://asp.net/mvc" title="ASP.NET MVC Website">

        http://asp.net/mvc</a>.

</p>

<%= Html.TextBox("CinemaName", Model.CinemaName)%>

<%= Html.DropDownList("MoviesName", Model.MoviesList)%>



<input type="submit" value="Submit" />

<% } Html.EndForm(); %>
Run Code Online (Sandbox Code Playgroud)

} {

Mat*_*son 5

表单帖子仅发送选择列表的值.你不需要任何其他东西.你应该能够从价值中得到你想要的东西.