Aspnet MVC Link Oluşturma HtmlActionLink

Asp.net MVC de Html.ActionLink() en çok kullandığımız koddur. Aspnet MVC de link oluşturmayı göstereceğiz yani bir sayfadan başka bir sayfaya gideceğiz.

Html.ActionLink() Kullanımı:

En az iki parametre almak zorundadır.

Örnek Kullanımı :

Html.ActionLink(string linkText,string actionName, string controllerName, RouteValueDictionary routeValues ya da ,object routeValues), object htmlAtrributes);

Sık kullandığımız parametreler şunlardır.

string linkText = "Linkimizin Metini"

string actionName = "Kullanıcağımız Action 'ın ismi",

string controllerName = "Actionumuz hangi Controllerdaysa onun ismi",

RouteValueDictionary routeValues = "Urldeki parametre ve değerlerini yazıyoruz varsa",

object routeValues = "Eğer Action da bir parametre varsa o parametreye değer göndermek için",

object htmlAttributes = "Linkimizde html kodlarını kullanmak için"

Şimdi ise kodlamasını yapalım.

Not : Arkadaşlar yazdığımız Html.ActionLink() derlendiğinde html a tag olarak yazılmaktadır o yüzden sadece Html.ActionLink() olarak kullanmalıyız.

a href="@Html.ActionLink("Link","Hakkimda")" yanlış bir kullanım olucaktır. 

 @*İki parametreli kullanımı*@
 @Html.ActionLink("Link Metni", "Hakkimda") @*Hakkımda Bir actionmetotdur.*@
 @*Html Ekran Çıktısı *@
 <a href="/Home/Hakkimda">Link Metni </a>

 @*Üç parametreli kullanımı*@
 @Html.ActionLink("Link Metni", "Hakkimda","Home")

 @*Üçüncü parametremiz Controller ismi olucaktır.
 Sorabilirsiniz neden yazmaya ihtiyaç olabilir yukarıda yazmadık diye 
 Yukarıda yazmama sebebiz kodları yazdığımız 
 View kısmı Home controller ait i bir Viewdir.
 Ama başka bir  Controllere gitmek isteye biliriz.
  *@
 @*Html Ekran Çıktısı *@
 <a href="/Home/Hakkimda">Link Metni</a>
 Url  = domain.com/Home/Hakkimda

 @*Dört parametreli kullanımı*@
 @Html.ActionLink("Link Metni", "Hakkimda", "Home", 
 new { target ="_blank" ,name = "link",style ="color : red"})
 @*Linkimize css ve html kodlarımızıda eklemiş oluyoruz*@
 @*Html Ekran Çıktısı *@
 <a href="/Home/Hakkimda" style="color :red " target ="_blank" ></a>
 Url  = domain.com/Home/Hakkimda

 @*Beş parametreli kullanımı*@
 @Html.ActionLink("Link Metni", "Hakkimda", "Home", new { id = 7 }, 
   new { target = "_blank", name = "link", style = "color : red" })

 @*Kullandıgımız  new { id = 7}
 object routeValues kullanmış olduk eğer action metodumuz
 bir parametre alıyorsa o parametreyi göndermemizi  sağlıyor 

 //Örnek olarak action metodumuz
 public ActionResult Hakkimda(int id)
 {
  //işlemlerimiz
 }
 *@
 @*Html Ekran Çıktısı *@
 <a href="/Home/Hakkimda/7" style="color :red " target ="_blank" ></a>
 Url  = domain.com/Home/Hakkimda/7