0

私は ASP.Net テクノロジの学習を始めたばかりで、Microsoft の興味深いチュートリアルでやめました。ここにリンクがあります。ドロップダウンリストを追加して入力する部分があり、その方法がわかりません。彼らとまったく同じようにやっていると、そのドロップダウンリストが表示されません。その部分はすべて問題なく、何が間違っているのか説明してください。

4

1 に答える 1

2

@Html.DropDownList()ちょっと特殊です。パラメータ値を暗黙的または明示的に渡すことができます。

チュートリアルでは、次のように、モデル プロパティの名前でヘルパーを呼び出すことにより、暗黙的に実行しています。

<div class="editor-field"> 
        @Html.DropDownList("DepartmentID", String.Empty) 
        @Html.ValidationMessageFor(model => model.DepartmentID) 
</div>

暗黙的に実行することで、HTML ヘルパーはViewBagで同じ名前のオブジェクトを探します。そして、メソッドでわかるように、PopulateDepartmentsDropDownList()彼らはまさにそれを行っています (最後の行):

private void PopulateDepartmentsDropDownList(object selectedDepartment = null)
{
    var departmentsQuery = from d in db.Departments
                           orderby d.Name
                           select d;
    ViewBag.DepartmentID = new SelectList(departmentsQuery, "DepartmentID", "Name", selectedDepartment);
}

このチュートリアルでは、@Html.DropDownList()ヘルパーについて詳しく説明します。

于 2013-07-23T11:07:43.377 に答える