0

別のモデルへの外部キーを持つビューモデルがあり、それに基づいて、選択した値の名前を表示し、他のすべてのオプションを提供するdropDownListを作成して、好きなように変更できるようにします。これは私の作成フォームです:

@using (Html.BeginForm()) {
@Html.ValidationSummary(true, "Failed creating the feed")
<fieldset>
    <legend>FeedViewModel</legend>

    <div class="editor-label">
        @Html.HiddenFor(model => model.FeedId)
    </div>

    <div class="editor-label">
        @Html.LabelFor(model => model.LinkUrl)
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.LinkUrl)
        @Html.ValidationMessageFor(model => model.LinkUrl)
    </div>

    <div class="editor-label">
        @Html.LabelFor(model => model.FolderId)
    </div>
    <div class="editor-field">

    </div>

    <p>
        <input type="submit" value="Create" />
    </p>
</fieldset>

最後のdivでdropDownListを作成したいのですが、モデルからの値がすでにあります。どうやってやるの?

4

1 に答える 1

0

Html.DropDownListFor 拡張メソッドを使用する必要があります。

@Html.DropDownListFor(m => m.ImageId, new SelectListItem[] {
            new SelectListItem {
                Selected = true,
                Text = "Text 1",
                Value = "Fileld Value 1"
            },
            new SelectListItem {
                Selected = false,
                Text = "Text 2",
                Value = "Fileld Value 2"
            }
        });

もちろん、2 番目のパラメーター IEnumerable は、ハードコーディングする代わりにデータベースから設定できます。

于 2012-05-20T08:49:04.450 に答える