0

Viewbag.typeofchangeビューにリストを渡すためにコントローラーで使用しています。Web ページ/ビューの作成で、dropdownlist項目が選択されている場合、エンティティ モデル/データベースに正しく保存されます。

ただし、編集 Web ページ/ビューでは、ドロップダウンリストに元の値が表示されますが、ページを保存すると、ドロップダウンリストの新しい項目が選択されていないと値が失われます。

編集ビューでdropdownlistを選択すると、新しい値がデータベースに保存されます。

ユーザーがアイテムを選択しない場合に失われないように、dropdownlist変数の元の値を維持するにはどうすればよいですか?typeofchange

コントローラーのコード:

    List<SelectListItem> items = new List<SelectListItem>();
    items.Add(new SelectListItem { Text = "Red", Value = "Red" });
    items.Add(new SelectListItem { Text = "Green", Value = "Green" });
    items.Add(new SelectListItem { Text = "Blue", Value = "Blue" });
    items.Add(new SelectListItem { Text = "Other/Explain", Value = "Other" });
    ViewBag.typeofchange = items;

編集ビューのコード:

    <div class="editor-field">
        @Html.DropDownList("typeofchange", Model.typeofchange)
    </div>

Entity CodeFirst モデルのコード:

    [DisplayName("Type of Change")]
    public string typeofchange { get; set; }

フィードバックに感謝します。

4

1 に答える 1

0

ViewBag で渡される SelectList である typeofchange と、モデルの一部である typeofchange の 2 つの変数があります。モデル typeofchange を選択した値に設定するだけで、関連する SelectListItem の Selected プロパティが設定されます。

于 2012-12-21T12:29:35.273 に答える