Heim > Backend-Entwicklung > C++ > Wie binde ich eine Liste von Mitarbeitern an einen ausgewählten Tag -Helfer in ASP.NET CORE MVC?

Wie binde ich eine Liste von Mitarbeitern an einen ausgewählten Tag -Helfer in ASP.NET CORE MVC?

Barbara Streisand
Freigeben: 2025-01-28 21:06:09
Original
805 Leute haben es durchsucht

How to Bind a List of Employees to a Select Tag Helper in ASP.NET Core MVC?

ASP.NET CORE MVC Wählen Sie Tag Helfer: Binding Employee Lists

Dieser Handbuch zeigt, wie eine Liste von Mitarbeitern effektiv an einen ausgewählten Tag -Helfer in ASP.NET CORE MVC gebunden ist, um sicherzustellen EmployeeId

Modellstruktur anzeigen:

Nehmen wir an, Ihr Ansichtsmodell ist wie folgt strukturiert:

public class MyViewModel
{
    public int EmployeeId { get; set; }
    public string Comments { get; set; }
    public List<Employee> EmployeesList { get; set; }
}

public class Employee
{
    public int Id { get; set; }
    public string FullName { get; set; }
}
Nach dem Login kopieren
Die Auswahlliste auswählen:

Der Schlüssel besteht darin, ein

Objekt aus Ihrem

zu erstellen und es in Ihrer Ansicht zu verwenden. So können Sie es in Ihrer Controller -Aktion tun: SelectList EmployeesList

und in Ihrer Ansicht:
public IActionResult Create()
{
    var vm = new MyViewModel();
    vm.EmployeesList = new List<Employee>
    {
        new Employee { Id = 1, FullName = "Shyju" },
        new Employee { Id = 2, FullName = "Bryan" }
    };
    return View(vm);
}
Nach dem Login kopieren

Dies bindet die
<select asp-for="EmployeeId" asp-items="@new SelectList(Model.EmployeesList, \"Id\", \"FullName\")"></select>
Nach dem Login kopieren
an die

-Mobilie und zeigt SelectList als Optionstext und verwendet EmployeeId als Wert. FullName Id

Vorabwählen eines Mitarbeiter:

Setzen Sie die

-Mobilie in Ihrem Ansichtsmodell, bevor Sie sie an die Ansicht übergeben:

, um einen Mitarbeiter vorzuziehen: EmployeeId

public IActionResult Create()
{
    var vm = new MyViewModel();
    vm.EmployeesList = new List<Employee> { /* ... your employees ... */ };
    vm.EmployeeId = 2; // Pre-selects Bryan
    return View(vm);
}
Nach dem Login kopieren

Alternative: Verwenden von Viewbag (weniger empfohlen):

zwar möglich, ist die Verwendung von

aufgrund seiner dynamischen Art und des Fehlerpotentials im Allgemeinen weniger bevorzugt. Hier ist ein Beispiel: ViewBag

// Controller
ViewBag.Employees = new List<SelectListItem>
{
    new SelectListItem { Text = "Shyju", Value = "1" },
    new SelectListItem { Text = "Bryan", Value = "2" }
};

// View
<select asp-for="EmployeeId" asp-items="@ViewBag.Employees"></select>
Nach dem Login kopieren

Erweiterte Szenarien:

  • Mehrfachauswahl: Verwenden Sie ein Array oder einen Listentyp für in Ihrem Ansichtsmodell, um mehrere Auswahlen zu ermöglichen. EmployeeId
  • Gruppierung: Verwenden Sie die -S SelectListItem Eigenschaft für Gruppenoptionen innerhalb des Dropdowns. Group
Denken Sie daran, die offizielle Microsoft -Dokumentation für ausgewählte Tag -Helpers zu konsultieren, um fortgeschrittenere Funktionen und Optionen zu erhalten. Die Verwendung des

-Ansatzes direkt aus Ihrem Modell ist im Allgemeinen sauberer und sicherer als die Verwendung SelectList. ViewBag

Das obige ist der detaillierte Inhalt vonWie binde ich eine Liste von Mitarbeitern an einen ausgewählten Tag -Helfer in ASP.NET CORE MVC?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage