2017-05-12 1 views
0

Ich bin Anfänger mit der Sprache asp.net und ich habe einige Schwierigkeiten zu verstehen, wie funktioniert die @Html.ListBoxFor (auch wenn ich das Dokument lese).Binding Werte in einer @ Html.ListBoxFor

In meinem Fall habe ich dies:

@Html.ListBoxFor(model => model.groupe.Permissions, new SelectList(Model.permissionList,"Name")) 

model.groupe.Permissions ist eine leere Liste der Berechtigungs und Model.permissionList eine Liste mit Erlaubnis.

Ich möchte mehrere Auswahlliste und foreach Option Id = permission.id und value = permission.Name

haben erstellen Wie kann ich so etwas tun:

@Html.ListBoxFor(model => model.groupe.Permissions, new SelectList(Model.permissionList, id ="Id", value = "Name")) 

hier permissionList:

public List<Permission> permissionList { get; set; } 

und Permission :

public class Permission 
    { 
     public long Id { get; set; } 
     public string Description { get; set; } 
     public string Name { get; set; } 
} 
+0

sollte es mit der Arbeit 'Model.permissionList, "Id", "Name"' – Usman

+0

können Sie nicht binden ein 'zu einer Sammlung von komplexen Objekten' . Die Eigenschaft 'Berechtigungen' muss IEnumerable ' und ihre '@ Html.ListBoxFor (m => m.groupe.Permissions, neue SelectList (Model.permissionList," Id "," Name "))' in der Ansicht sein (aber ' permissionList' sollte 'IEnumerable ' sein und du generierst die 'SelectList' im Controller, nicht die View –

Antwort

0

diese Hoffnung sehen, das hilft:

@Html.ListBoxFor(model => model.groupe.Permissions, new MultiSelectList(Model.permissionList, "Id", "Name")) 
+0

Nop :(, erkennt ID und Wert nicht –

+0

Meine schlechte bearbeitete meine Antwort, stelle auch sicher, dass model.groupe .Permissions ist ein Array von derselben Art wie ID in Model.PermissionList – User3250

+0

ich diese

  • erhalten AccessAdminPage
  • wie ich schon bekommen, aber ich habe nicht Die ID:/ –