0

私は3つのモデルクラスを持っています(最初にコード)

ProductGroup(p)->product(c)(produGroups のリストは、新しい製品の作成中にドロップダウン リストに表示されます)、

今、私の要件は、

Product(p)->PreferedLocation(c)、preferedLocation(アクションの作成) リンクを選択すると、特定の製品の詳細を入力する必要があります。最初に、Product:Mango のようなラベルに単一の製品名を表示する必要があることを意味します

コントローラ内

    public ActionResult  PreferedLocation()
    {
        ViewBag.ProductID = new  SelectList(db.Products,"ProductID","Name");
       //ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "Name");
        return View();

    }

    //
    // POST: /PreferedLocation/Create

    [HttpPost]
    public ActionResult PreferedLocation(PreferredLocation preferredlocation)
    {
        if (ModelState.IsValid)
        {
            db.PreferredLocations.Add(preferredlocation);
            db.SaveChanges();
            return RedirectToAction("Index");
        }
        // ViewBag.ProductID = new SelectList(db.Products, "ProductID", "Name", preferredlocation.ProductID);

        return View(preferredlocation);
    }

ビューで:

    <div class="editor-field">
        <%: Html.EditorFor(model => model.Name) %>

        <%: Html.ValidationMessageFor(model => model.Name) %>
    </div>

    <div class="editor-label">
        <%: Html.LabelFor(model => model.StreetAdress) %>
    </div>
    <div class="editor-field">
        <%: Html.EditorFor(model => model.StreetAdress) %>
        <%: Html.ValidationMessageFor(model => model.StreetAdress) %>
    </div>

    <div class="editor-label">
        <%: Html.LabelFor(model => model.Description) %>
    </div>
    <div class="editor-field">
        <%: Html.EditorFor(model => model.Description) %>
        <%: Html.ValidationMessageFor(model => model.Description) %>
    </div>

    <div class="editor-label">
        <%: Html.LabelFor(model => model.Latitude) %>
    </div>
    <div class="editor-field">
        <%: Html.EditorFor(model => model.Latitude) %>
        <%: Html.ValidationMessageFor(model => model.Latitude) %>
    </div>

            <div class="display-label">product</div>
<div class="display-field">
    <%: Html.LabelFor(model=>Model.Product.Name) %>
    <%: Html.ValidationMessageFor(model => model.ProductID) %>
</div>

ここで、ラベルに製品名を表示するためのコードを試しましたが、製品名の代わりに次のように出力されました

製品

商品名。

私がしなければならない変更。

4

1 に答える 1

1

LabelFor の代わりに DisplayFor を使用します。

于 2012-05-19T12:58:48.517 に答える