簡體   English   中英

Html.DropDownList不顯示SelectList選擇的值

[英]Html.DropDownList doesn't display SelectList selected value

我已經閱讀了許多有關該主題的問題,但沒有設法找到解決此特定問題的方法。

控制者

public ActionResult Index() {
    string categorie = "--Tout--";
    string souscategorie = "--Tout--";

    if (Session["Categorie"] != null) {
        categorie = Session["Categorie"].ToString();
    }

    if (Session["SousCategorie"] != null) {
        souscategorie = Session["SousCategorie"].ToString();
    }

    SelectList cats = new SelectList(GetCategories(), categorie);
    SelectList sCats = new SelectList(GetSousCategories(), souscategorie);

    ViewBag.Categories = cats;
    ViewBag.SousCategories = sCats;

    using(DAL.WebShopEntities entities = new WebShopEntities()) {
        return View(entities.Article.ToList());
    }
}

視圖

@Html.Label("Catégories")
@Html.DropDownList("Categories", (SelectList)ViewBag.Categories, new { @class = "form-control dropdownlist" })

<br />

@Html.Label("Sous-Catégories")
@Html.DropDownList("SousCategories", (SelectList)ViewBag.SousCategories, new { @class = "form-control dropdownlist" })

調試視圖時,我可以清楚地看到會話中存儲的期權已發送到視圖。 但是在瀏覽器中簽入時顯示索引0。 這讓我感到困惑,因為SelectList的行為正常,我認為問題出在DropDown上,但是可能是什么問題呢?

您可以嘗試更改Viewbag屬性名稱並重試嗎?

嘗試類別=> CategoriesListSousCategories => SousCategoriesList

public ActionResult Index() {
    string categorie = "--Tout--";
    string souscategorie = "--Tout--";

    if (Session["Categorie"] != null) {
        categorie = Session["Categorie"].ToString();
    }

    if (Session["SousCategorie"] != null) {
        souscategorie = Session["SousCategorie"].ToString();
    }

    SelectList cats = new SelectList(GetCategories(), categorie);
    SelectList sCats = new SelectList(GetSousCategories(), souscategorie);

    ViewBag.CategoriesList = cats;
    ViewBag.SousCategoriesList = sCats;

    using(DAL.WebShopEntities entities = new WebShopEntities()) {
        return View(entities.Article.ToList());
    }
}



@Html.Label("Catégories")
@Html.DropDownList("Categories", (SelectList)ViewBag.CategoriesList, new { @class = "form-control dropdownlist" })

<br />

@Html.Label("Sous-Catégories")
@Html.DropDownList("SousCategories", (SelectList)ViewBag.SousCategoriesList, new { @class = "form-control dropdownlist" })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM