2017-12-08 2 views
-2

Googeln für eine Weile, aber ich kann nicht näher kommen.MVC So ändern Sie die Dropdown-Liste Artikel-Namen

Ich verwende MVC mit einer EF Datenbankstruktur.

Ich möchte, dass die Dropdown-Listenelemente in der Ansicht mit anderen Namen angezeigt werden, als mit denen sie kommen.

Derzeit gibt die Lambda-Abfrage eine Liste() zurück. Ich möchte, dass jedes Element einen String-Namen abhängig von ihrem aktuellen Namen erhält. Schließlich muss das ausgewählte Feld in einem anderen Lambda als das Byte verwendet werden, das es war.

bearbeiten

//view 
<p> 
@using (Html.BeginForm("Index", "Home", FormMethod.Get)) 
{ 
<p> 
    @Html.DropDownList("vbType", (SelectList)ViewBag.Type, "" , new { onchange = "form.submit();" }) 

.... 

//controller 
var typeLst = new List<byte>(); 
var typeQry = from t in db.model1 
     orderby t.TYPE 
     select t.TYPE; 
typeLst.AddRange(typeQry.Distinct()); 
ViewBag.vbType = new SelectList(typeLst); 

.... 

Vielen Dank im Voraus.

+0

Bitte erstellen Sie ein [Minimal, vollständige und überprüfbare Beispiel] (https://Stackoverflow.com/help/mcve) Ihres Problems – Liam

Antwort

-1

Sie müssen die Value-Eigenschaft der Dropdown-Liste verwenden. Machen Sie Ihre Liste zu einem Typ von SelectListItem.

zuweisen Text = [Sie Erforderlich Text] und Wert = [Aktuelle Name]

+0

Braucht mehr Details – Liam

0

Sie ein SelectListItem erstellen können in Ihrer Dropdownlist angezeigt werden soll.

Beispiel:

@Html.DropDownListFor(model => model.YearStartedToPay, 
     Enumerable.Range(DateTime.Today.Year - 60, 61).OrderByDescending(x => int.Parse(x.ToString())).Select(n => new SelectListItem() { Text = n.ToString(), Value = n.ToString(), Selected = false }).ToList<SelectListItem>(),....) 

In diesem Fall bin ich ein Enumerable erstellen, dass Ihre Liste von EF zurückgegeben werden, der Bestellung und als SelectListItem auswählen.

+0

Vielen Dank, Liam! Es war mein erstes Mal hier, ich weiß nicht, wie ich diesen Blockcode erstellen soll! Ich weiß es zu schätzen! –

+0

Haben Sie dies gelesen [Wie formatiere ich meine Code-Blöcke?] (Https://meta.stackoverflow.com/questions/251361/how-doi-i-format-my-code-blocks) – Liam

+0

Also kurz gesagt, verschiebe ich die meisten Sachen, die ich im Controller machen wollte, auf die Ansicht? –

Verwandte Themen