0

ビューモデル:

public class AdminAddMovieDataBase
    {
        public MovieInformation MovieInformation { get; set; }
        public List<Genre> Genres { get; set; }
  }

ベースページ:

<div class="contentWrapper1">
  <div class="contentLeft1">Title</div>
  <div>
  @Html.TextBoxFor(model => model.MovieInformation.MovieTitle, new { @class = "signupinputnameField", id = "movieTitle" }) </div>
  </div>
  <div id="genre">
  <div class="contentLeft1">Genre</div>
  @Html.Partial("_GenrePartialPage", Model.Genres)
  </div>

部分ページ:

<div class="ContentWrapper1">

  <ul><li>
     @Html.DropDownList("GenreList", new SelectList(Model, "GenreID", "GenreName"), "--Select Genre--", new { @class = "contentRightOption1" })
    <a href="#" onclick="$(this).parent().remove();">Delete</a>
      </li></ul>
  </div>

ベースページのフォームの保存ボタンをクリックすると(ここではサンプルコードでは指定していません)。MovieInformation モデルのデータは取得できますが、部分ページにあるジャンルのデータは取得できません。部分ページを使用してビューモデルをバインドできませんでした。ありがとうございました。

4

1 に答える 1

0

ビュー モデルのジャンル リストは である必要があり、モデルList<SelectListItem>には文字列プロパティも含める必要があります。この例では、これを MyGenre と呼びます。その後、使用できます

@Html.DropDownListFor(model=>model.Genre.MyGenre, model=>model.Genre.GenreList)

したがって、モデルの最初のプロパティは文字列で、2 番目は SelectListItem のリストです。フォームが投稿されると、文字列から選択したアイテムを取得できます。

于 2013-05-19T06:08:23.747 に答える