C# Html Actionlink Parameters

3 min read Jul 03, 2024
C# Html Actionlink Parameters

Menggunakan ActionLink dengan Parameter di C#

ActionLink dalam ASP.NET MVC adalah cara yang mudah untuk membuat link HTML yang akan memicu action controller tertentu. Namun, sering kali kita perlu meneruskan parameter ke action tersebut. Artikel ini akan membahas cara menggunakan ActionLink dengan parameter di C#.

Parameter di ActionLink

Parameter dapat ditambahkan ke ActionLink dengan menggunakan sintaks berikut:

@Html.ActionLink("Link Text", "ActionName", "ControllerName", new { param1 = "value1", param2 = "value2" }, null)

Penjelasan:

  • "Link Text": Teks yang akan ditampilkan di link.
  • "ActionName": Nama action yang ingin dijalankan.
  • "ControllerName": Nama controller yang berisi action.
  • new { param1 = "value1", param2 = "value2" }: Object anonim yang berisi parameter dan nilainya.
  • null: Argumen terakhir adalah object HTMLAttributes yang dapat digunakan untuk mengatur atribut HTML tambahan pada link. Dalam contoh ini, kita menggunakan null karena tidak perlu menambahkan atribut tambahan.

Contoh Implementasi

Misalnya, kita ingin membuat link yang akan memanggil action "Edit" pada controller "Products" dengan parameter "productId" yang berisi ID produk tertentu. Kode C# berikut menunjukkan bagaimana melakukan hal tersebut:

@Html.ActionLink("Edit", "Edit", "Products", new { productId = item.ProductId }, null)

Kode ini akan menghasilkan link HTML berikut:

Edit

Mengakses Parameter di Action

Dalam action controller, parameter yang diteruskan melalui ActionLink dapat diakses dengan menggunakan parameter method dengan nama yang sama dengan nama parameter yang ditambahkan ke ActionLink:

public ActionResult Edit(int productId)
{
    // Gunakan productId untuk mengambil data produk yang ingin diedit
    // ... 
}

Kesimpulan

ActionLink adalah cara yang mudah dan efisien untuk membuat link yang memanggil action controller dengan parameter. Dengan memahami cara menggunakan parameter di ActionLink, Anda dapat membuat aplikasi web yang lebih dinamis dan interaktif.