Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk mengikat senarai pekerja ke pembantu tag pilih di ASP.NET Core MVC?

Bagaimana untuk mengikat senarai pekerja ke pembantu tag pilih di ASP.NET Core MVC?

Barbara Streisand
Lepaskan: 2025-01-28 21:06:09
asal
748 orang telah melayarinya

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

Asp.net Core MVC Pilih Tag Helper: Mengikat Senarai Pekerja

Panduan ini menunjukkan bagaimana untuk mengikat senarai pekerja dengan berkesan kepada penolong tag pilih dalam ASP.NET Core MVC, memastikan nilai yang dipilih dengan betul memetakan ke harta

. EmployeeId

Lihat Struktur Model:

mari kita anggap model pandangan anda berstruktur seperti berikut:

<code class="language-csharp">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; }
}</code>
Salin selepas log masuk
memaparkan senarai pilih:

Kunci adalah untuk membuat objek

dari

anda dan gunakannya dalam pandangan anda. Berikut adalah cara anda boleh melakukannya dalam tindakan pengawal anda: SelectList EmployeesList

dan pada pandangan anda:
<code class="language-csharp">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);
}</code>
Salin selepas log masuk

ini dengan ringkas mengikat
<code class="language-html"><select asp-for="EmployeeId" asp-items="@new SelectList(Model.EmployeesList, \"Id\", \"FullName\")"></select></code>
Salin selepas log masuk
ke harta

, memaparkan SelectList sebagai teks pilihan dan menggunakan EmployeeId sebagai nilai. FullName Id

Pra-memilih pekerja:

untuk memilih pekerja, tetapkan harta dalam model pandangan anda sebelum menyampaikannya kepada pandangan:

EmployeeId

alternatif: menggunakan beg viewbag (kurang disyorkan):
<code class="language-csharp">public IActionResult Create()
{
    var vm = new MyViewModel();
    vm.EmployeesList = new List<Employee> { /* ... your employees ... */ };
    vm.EmployeeId = 2; // Pre-selects Bryan
    return View(vm);
}</code>
Salin selepas log masuk

Walaupun mungkin, menggunakan umumnya kurang disukai kerana sifat dinamik dan potensi untuk kesilapan. Berikut adalah contoh:

ViewBag

Senario lanjutan:
<code class="language-csharp">// 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></code>
Salin selepas log masuk

Pelbagai pemilihan:
    Gunakan jenis array atau senarai untuk
  • dalam model pandangan anda untuk membolehkan pelbagai pilihan. EmployeeId pengelompokan:
  • Gunakan harta
  • 's kepada pilihan kumpulan dalam lungsur turun. SelectListItem Group ingat untuk berunding dengan dokumentasi Microsoft rasmi pada pembantu tag pilih untuk ciri dan pilihan yang lebih canggih. Menggunakan pendekatan
  • secara langsung dari model anda biasanya lebih bersih dan lebih selamat daripada menggunakan
.

Atas ialah kandungan terperinci Bagaimana untuk mengikat senarai pekerja ke pembantu tag pilih di ASP.NET Core MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan