/ / Erhalte die ID des ausgewählten Dropdown-Listenelements - asp.net-mvc

Erhalte die ID des ausgewählten Dropdown-Listenelements - asp.net-mvc

Ich bin neu in MVC und ich brauche Hilfe. Ich habe diese Modellklasse:

Public Class PostCategories


Public Property ID() As Integer


Public Property Name() As String

Public Property Slug() As String

Public Property ParentID() As Integer

und ich habe diese Dropdown-Liste aus meiner Sicht:

 @Html.DropDownList("IDList", New SelectList(Model, "Id", "ID"), "Selected Parent")

Anstelle von ID möchte ich den Namen in die Dropdown-Liste setzen und die ID in der db speichern. Wie soll ich das tun? Brauchen Sie Hilfe pls.

Antworten:

1 für die Antwort № 1

Angenommen, Ihr View-Modell ist eine Liste von PostCategories, dann verwenden Sie einfach:

@Html.DropDownList("IDList", New SelectList(Model, "ID", "Name"), "Selected Parent")

0 für die Antwort № 2

Wie Beyers sagte, sollte es ausreichen, deinen Code zu ändern

@Html.DropDownList("IDList", New SelectList(Model, "ID", "Name"), "Selected Parent")

wo der zweite Parameter der SelectListKonstruktor ist der Wert des ausgewählten Elements, das beim Senden übergeben werden soll. Er muss den Namen einer Ihrer Modelleigenschaften enthalten und muss daher "ID" und nicht "ID" lauten. Der zweite Parameter ist der Name des Elements, der im Dropdown-Menü angezeigt wird. In diesem Fall sollten Sie "Name" verwenden, da es wahrscheinlich die Eigenschaft ist, die Sie verwenden möchten. Optional können Sie einen vierten Parameter übergeben, der zum Zeitpunkt des Ladens der Seite ausgewählt ist.

Ein anderer Ansatz wäre, Ihre SelectList im Controller zu erstellen und sie mit dem ViewBag wie folgt zu übergeben:

ViewBag.PostCategoriesId = new SelectList(yourPostCategoriesList, "ID", "Name");

und dann in der Ansicht Ihr Code wäre wie:

@Html.DropDownList("PostCategoriesId", string.Empty)