デフォルト値だけの空のドロップダウンリストを作成したいのですが、次のコードを使用します。
@Html.DropDownList("parent","--Select Parent--")
しかし、実行時にこのエラーが表示されます。
キー「親」を持つタイプ「IEnumerable」のViewDataアイテムはありません。
どうすれば解決できますか?ありがとう。
デフォルト値だけの空のドロップダウンリストを作成したいのですが、次のコードを使用します。
@Html.DropDownList("parent","--Select Parent--")
しかし、実行時にこのエラーが表示されます。
キー「親」を持つタイプ「IEnumerable」のViewDataアイテムはありません。
どうすれば解決できますか?ありがとう。
次のように空のDropDownListを作成できます。
@Html.DropDownList("parent", Enumerable.Empty<SelectListItem>(), "--Select Parent--")
上記の例にhtml属性を追加します。
@Html.DropDownList("Idparent", Enumerable.Empty<SelectListItem>(), "Select one...", new {@class="form-control"})
ビューにHTML選択オプションを作成するだけです。
<select id="parent" name="parent">
<option value="">Select parent </option>
</select>
編集: コメントによる。
parent
フォームを送信すると、名前の付いたパラメータを持つことで、選択した値を取得できます
[HttpPost]
public ActionResult Create(string parent,string otherParameterName)
{
//read and save and return / redirect
}
またはparent
、モデルのバインドに使用しているViewModelにプロパティがあります。
public class CreateProject
{
public string parent { set;get;}
public string ProjectName { set;get;}
}
そしてあなたの行動方法で。
[HttpPost]
public ActionResult Create(CreateProject model)
{
// check model.parent value.
}
コントローラでこのようなことを実行して、空のドロップダウンリストを作成できます
ViewBag.ClassID = new SelectList(db.Classes.Where(c => c.ClassID == 0) , "ClassID", "ClassName").ToList();